How to convert a TMX to tab-delimited using BBEdit? Thread poster: Hans Lenting
|
Download BBEdit from: https://www.barebones.com. You'll need the upcoming version 4.6.2. Replace « with < and » with >, save as a .textfactory file. Place it in the correct folder (/Users/YOURNAME/Library/Application Support/BBEdit/Text Filters/). Run this text factory on a TMX file to convert it to a clean tab-del file. «?xml version="1.0" encoding="UTF-8"?... See more Download BBEdit from: https://www.barebones.com. You'll need the upcoming version 4.6.2. Replace « with < and » with >, save as a .textfactory file. Place it in the correct folder (/Users/YOURNAME/Library/Application Support/BBEdit/Text Filters/). Run this text factory on a TMX file to convert it to a clean tab-del file. «?xml version="1.0" encoding="UTF-8"?» «!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"» «plist version="1.0"» «dict» «key»TextTransformComponents«/key» «array» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «true/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string» «/string» «key»SearchString«/key» «string»[\x{00}-\x{08}]|\x{0B}|\x{0C}|[\x{0E}-\x{1F}]|\x{F0B7}|\x{F0F0}«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»«/string» «key»SearchString«/key» «string»<[eb]pt.*?>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»«/string» «key»SearchString«/key» «string»<ph.*?>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»&«/string» «key»SearchString«/key» «string»&«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»<«/string» «key»SearchString«/key» «string»<«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»>«/string» «key»SearchString«/key» «string»>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»'«/string» «key»SearchString«/key» «string»'«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»"«/string» «key»SearchString«/key» «string»"«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»«/string» «key»SearchString«/key» «string»&.*?;«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»ReplaceString«/key» «string»«/string» «key»SearchString«/key» «string»_{2,}«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string» ⇥ «/string» «key»SearchString«/key» «string»\t«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string»xml:lang="DE-DE"><seg>«/string» «key»SearchString«/key» «string»xml:lang="DE-DE">(\n|.)*?<seg>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string»xml:lang="NL-NL"><seg>«/string» «key»SearchString«/key» «string»xml:lang="NL-NL">(\n|.)*?<seg>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string» ¶ «/string» «key»SearchString«/key» «string»(?<!</seg>|</prop>|</tuv>|</tu>|">)\n«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»ExcludeMatches«/key» «true/» «key»InvertMatchTest«/key» «integer»1«/integer» «key»SearchString«/key» «string»<seg>«/string» «key»UseGrep«/key» «false/» «/dict» «key»ComponentName«/key» «string»ProcessLinesContaining«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string»«/string» «key»SearchString«/key» «string»\s*<tuv xml:lang="DE-DE"><seg>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string»\n\t«/string» «key»SearchString«/key» «string»\s*<tuv xml:lang="NL-NL"><seg>«/string» «key»UseGrep«/key» «true/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string» «/string» «key»SearchString«/key» «string»</seg>«/string» «key»UseGrep«/key» «false/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «dict» «key»ComponentArguments«/key» «dict» «key»CaseSensitive«/key» «false/» «key»MatchWords«/key» «false/» «key»ReplaceString«/key» «string» «/string» «key»SearchString«/key» «string» «/string» «key»UseGrep«/key» «false/» «/dict» «key»ComponentName«/key» «string»ReplaceAll«/string» «key»Disabled«/key» «false/» «/dict» «/array» «key»TextTransformOptions«/key» «dict» «key»SaveMode«/key» «string»ask «/string» «key»SearchRecursive«/key» «true/» «key»TextFilesOnly«/key» «true/» «/dict» «key»TextTransformSources«/key» «array» «dict» «key»SourceNodeData«/key» «string»file:///Users/hl/Desktop/untitled%20text%206.xml«/string» «key»SourceNodeParentType«/key» «string»«/string» «key»SourceNodeType«/key» «string»OpenDocument«/string» «/dict» «/array» «key»com.barebones.DocumentType«/key» «string»TextTransform«/string» «/dict» «/plist»
[Edited at 2022-10-27 05:17 GMT] ▲ Collapse | | |
Gerard de Noord France Local time: 15:20 Member (2003) English to Dutch + ... Why do you use question marks? | Oct 28, 2022 |
Or, in other words, why do you post your answers as if they were questions? Your main point seems to be sharing your knowledge, not asking us for solutions. Cheers, Gerard | | |
Mr. Satan (X) English to Indonesian
That’s a long string of code, Hanzo-sensei. May I recommend creating a GitHub repo of your own? | | |
To report site rules violations or get help, contact a site moderator:
You can also contact site staff by
submitting a support request »
How to convert a TMX to tab-delimited using BBEdit?
Trados Business Manager Lite | Create customer quotes and invoices from within Trados Studio
Trados Business Manager Lite helps to simplify and speed up some of the daily tasks, such as invoicing and reporting, associated with running your freelance translation business.
More info » |
|
TM-Town | Manage your TMs and Terms ... and boost your translation business
Are you ready for something fresh in the industry? TM-Town is a unique new site for you -- the freelance translator -- to store, manage and share translation memories (TMs) and glossaries...and potentially meet new clients on the basis of your prior work.
More info » |
|