Is there a way to hide commands?
-
Also, if all you’re wanting to do is clean out all the XML tags, so that you can copy the contents/data and do something else with it, you could use a pretty simple regular expression to strip the XML tags. (This wouldn’t let you edit the XML… ie, if you strip out the tags, make an edit, and hit save, it will save the plain text, without any of the XML structure)
- Find What =
(?s)<[^>]+>
- Replace with = `` (empty)
- regular expression
(Note, if your attribute values have a
>
, this won’t work.) - Find What =
-
Yes sadly i have >. Thanks for everything who trying to help, let me show you the “exactly” what i want. But it translates all codes as well. If i cannot find, i will try to “re-translate” tags to their original values but sadly i have many tags.
-
Hello, @volkan-çolak,
I saw, one minute ago, that you’re on-line on our site ! So, just be patient one hour, about, as I found out a solution to your problem and I’m preparing a post to give you the method ;-))
See you later,
guy038
-
Hello, @volkan-çolak, @peterjones, @scott-sumner and All,
Aaaaah ! Yes, it took me some time to completely figure out your tricky problem, but I finally found out a solution ;-)) This method is long enough and I advice you to read this post, completely, before going ahead with the different steps to perform !
This method consists, principally, in :
-
Some copy/paste operations, of course
-
An N++ sort operation
-
Several searches/replacements, which will use the regular expression search mode
In this respect, for each S/R, simply follow these steps :
-
Open the N++
Replace
dialog (Ctrl + H
) -
Type in ( or copy/paste ) the SEARCH regex in the Find what: zone
-
Type in ( or copy/paste ) the REPLACE regex in the Replace with: zone
-
Set the
Wrap around
option -
Select the
Regular expression
search mode -
Click on the
Replace All
button ( Do not use theReplace
button ! )
Well, now, let’s go !
- From your picture, I simply created a similar code, while trying to get a correct sequence, as below, which represents a short part of your data :
<Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Retreat</Data> </Cell> <Cell> <Data ss:Type="String">Tears</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.101.Text</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">The orc shamans want to join you.</Data> </Cell> <Cell> <Data ss:Type="String">The orc shamans want to join you.</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Accept</Data> </Cell> <Cell> <Data ss:Type="String">Accept</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row>
- First, I strongly advice you to do a copy of your original data
Remark : We, all, should act as Mother Nature does : it never uses
ADN
genetic code. It always replicates it, first, as anARN
sequence, which, then, is used for any bio-chemical action ! Believe me, it’s been working… … … for3,7
billion years !-
So, open a COPY of your original file, in Notepad++
-
Now, using the first S/R, below, it should extract all the white zones of text, that you spoke of, in your picture
SEARCH
(?s)\s*<.+?"String">\s*|<.+
REPLACE
\r\n
( or\n
if you work on Unix files )You should obtain the different lines, below :
Retreat Tears Dialog.Option.101.Text Scenario Data The orc shamans want to join you. The orc shamans want to join you. Dialog.Option.358.OptionText Scenario Data Accept Accept Dialog.Option.358.OptionText Scenario Data
- Choose, now, the menu command
Edit > Line Operations > Sort Lines Lexicographically Ascending
. your text becomes sorted, as below :
Accept Accept Dialog.Option.101.Text Dialog.Option.358.OptionText Dialog.Option.358.OptionText Retreat Scenario Data Scenario Data Scenario Data Tears The orc shamans want to join you. The orc shamans want to join you.
- Perform, then, the following S/R, in order to delete all duplicate lines of that list :
SEARCH
^(.*\R)\1+
REPLACE
\1
you should obtain this shortened list :
Accept Dialog.Option.101.Text Dialog.Option.358.OptionText Retreat Scenario Data Tears The orc shamans want to join you.
- Now, paste the different lines of this American-English text, on an on-line translator. You said that you generally, use the Google one, but, personally, I prefer the translator, below, based on neuronal networks, which is really very efficient ::-)
https://www.deepl.com/translator
Well. So, let’s imagine that we would like to translate in French, using deepl.com site. We get the French list, below, that we paste, back, in N++ :
Accepter Option.de.dialogue.101.Texte Option.Dialog.Option.358.OptionText Se retirer Données de scénario Larmes Les chamans orcs veulent se joindre à vous.
I simply changed the French nom "Retraite " with the French verb "Se retirer ", which is better, given the context !
-
Now, we’re about to build the correct file, in order to run our last S/R ! So, in a new N++ tab :
-
Insert your original data, first :
-
Add a new line, made up several equal signs as, for instance
==================
-
Append all the English sentences, that we extracted, at first step
-
Add, again, a line
==================
-
Finally, add the French sentences, obtained from the on-line translator
-
This text should be, as below :
<Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Retreat</Data> </Cell> <Cell> <Data ss:Type="String">Tears</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.101.Text</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">The orc shamans want to join you.</Data> </Cell> <Cell> <Data ss:Type="String">The orc shamans want to join you.</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Accept</Data> </Cell> <Cell> <Data ss:Type="String">Accept</Data> </Cell> <Cell> <Data ss:Type="String">Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Scenario Data</Data> </Cell> </Row> =================================================== Accept Dialog.Option.101.Text Dialog.Option.358.OptionText Retreat Scenario Data Tears The orc shamans want to join you. =================================================== Accepter Option.de.dialogue.101.Texte Option.Dialog.Option.358.OptionText Se Retirer Données de scénario Larmes Les chamans orcs veulent se joindre à vous.
Almost done !
- We just have to run the last regex S/R, below, which changes all American/English sentences, in your code, with the matched French translation of these sentences !
SEARCH
(?-s)(?<="String">)(.+?)(?=</Data>(?s).+^=+.*?\R\1\R(?-s)(?:.+\R){7}(.+))|(?s)^=+.+
REPLACE
\2
IMPORTANT : The number seven, in the syntax
{7}
, is the total number of lines translated. Thus, le number7
, in our example
After replacement, you’re left with the expected text, containing translated “white” sentences, only ;-))
<Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Se Retirer</Data> </Cell> <Cell> <Data ss:Type="String">Larmes</Data> </Cell> <Cell> <Data ss:Type="String">Option.de.dialogue.101.Texte</Data> </Cell> <Cell> <Data ss:Type="String">Données de scénario</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Les chamans orcs veulent se joindre à vous.</Data> </Cell> <Cell> <Data ss:Type="String">Les chamans orcs veulent se joindre à vous.</Data> </Cell> <Cell> <Data ss:Type="String">Option.Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Données de scénario</Data> </Cell> </Row> <Row ss:StyleID="s3"> <Cell> <Data ss:Type="String">Accepter</Data> </Cell> <Cell> <Data ss:Type="String">Accepter</Data> </Cell> <Cell> <Data ss:Type="String">Option.Dialog.Option.358.OptionText</Data> </Cell> <Cell> <Data ss:Type="String">Données de scénario</Data> </Cell> </Row>
Et voilà !
Next time, I’ll give you some explanations on the regexes used, if you want to !
Best Regards,
guy038
-
-
-
Assuming that says what I think it says (I saw “button vote … 10 votes”), I second that motion. Actually, I square that motion; I would give +100 for that answser. :-)
-
Hi, @jim-dailey and @peterJones,
Thank you, guys, but I believe that we should remain modest ! Anyway, you, both, provide very detailed posts on various topics, too ! So, I could return the compliment to you !
We, all, just do our best to help anyone, when we think of a right solution ;-))
Cheers,
guy038
-
guy038> Thank you, guys, but I believe that we should remain modest !
Not to invite or start a political war, but I have to say, you’ll never be President of the U.S. with that kind of attitude!
:-)
-
@guy038 Omg i haven’t read it yet but even if you succeed or not, you deserve respect. Before i begin (tonight i will available) i truly wanted to thank you so much!
-
@Jim-Dailey Ehm. First of all thank you but it seems my knowledge + my english is unsufficient for this :( i felt guilty but i wasn’t expected it to be a difficult like this. I was tought it could be the plugin that can hides html codes :(
-
I think we are having language difficulties.
I did not help answer your question at all, so I’m not sure why you would thank me. But, you are welcome!
I just tried to praise @guy038 for his amazing answer (using the site he mentioned, https://www.deepl.com/translator, so that I could post in French, which I assume is Guy’s native language).
Then made a poor joke about his reply to my French posting.
I think you will find Guy’s post very useful. Best of luck!
-
Hi, @jim-dailey,
To be honest, the Google translation, of the American/English text, of my previous post, in French, wasn’t so bad, either !
But I suppose that neuronal networks are, definitively, a
+
for translation matters and I was, also, a bit impressed by the press comments about DeepL translator performances ;-))Cheers,
guy038