Crea un'evidenziazione della sintassi personalizzata in gedit


8

In seguito alla mia domanda di molto tempo fa, sto ancora cercando di modificare le mie capacità di gestione della fortuna. Il display nel terminale è fantastico, rimane solo una cosa: evidenziare la sintassi in Gedit mentre aggiungo, modifico o elimino singole fortune.

I miei file di fortuna personalizzati sono in questo formato:

Friend: "Whats a good movie?"
Me: "Snakes on a plane"
Friend: "Whats it about?"
Me: "Horses... horses on a boat..."
@AYYSIAN
%
Me on my wedding: you still like me, right?
@ComedyPosts
%
Mum: Son I'd love to meet your girlfriend...
Me: Me too...
@ComedyTruth
%
Doctor: "Ok, so what's wrong, how are you feeling?"
Me: *Looks at mum waiting for her to explain*
@ChildhoodFact
%
Friend: 75% of people are good at maths...
Me: Mmmmh, I guess then am in the remaining 18%...
@TheFunnyTeens
%
I loved the Titanic. My favorite character was the iceberg
@__GrumpyCat

Fondamentalmente a tweet, @namee il %personaggio. Quindi ripeti.

Quando lo apro in Gedit, tutto è nero.
Sto cercando un modo per creare un file di evidenziazione della sintassi che convertirà il %qualcosa in blu e il @namemagenta. Il tweet può rimanere nero.

NOTA:

  1. I file di fortuna sono di tipo mime text/plaine solo il formato dato li distingue davvero da un altro file di testo semplice.
  2. I file di fortuna non hanno estensione.

Risposte:


8

Crea e apri il tuo file di lingua di fortuna:

sudo touch /usr/share/gtksourceview-3.0/language-specs/fortune.lang
sudo -i gedit /usr/share/gtksourceview-3.0/language-specs/fortune.lang

Incolla quanto segue:

<?xml version="1.0" encoding="UTF-8"?>
<language id="fortune" _name="Fortune" version="2.0" _section="Markup">
  <metadata>
    <property name="mimetypes">text/plain</property>
    <property name="globs">*.</property>
  </metadata>

  <styles>
    <style id="at"      _name="@ sign"  map-to="def:constant" />
    <style id="percent" _name="percent sign"  map-to="def:comment" />
  </styles>
  <definitions>
    <context id="fortune">
      <include>
        <context id="at" style-ref="at">
          <start>@</start>
          <end>$</end>
        </context>
        <context id="percent" style-ref="percent">
          <start>%</start>
          <end>$</end>
        </context>
      </include>
    </context>
  </definitions>
</language>

Assicurarsi che sia accessibile:

sudo chmod 0644 /usr/share/gtksourceview-2.0/language-specs/screenplay.lang

Riavvia gedit.

Riferimento: la mia risposta alla fonte

I miei pronomi sono Lui / Lui


Grazie mille, lo proverò. Una cosa però, i file di fortuna non hanno estensione, la ragione del text/plaintipo mime. Vuol dire che <property name="globs">*.fort</property>diventa <property name="globs">*</property>?
Parto,

@Parto Questo lo applicherebbe a tutti i file senza estensione, ma come molti sono .txt andrebbe bene. Modificalo in <property name="globs">*.</property>e ho aggiornato la risposta con questo!
Tim,

2
Grazie mille. L'ho appena usato per aggiungere l' evidenziazione della sintassi di Twig a gedit.
TRiG,

@TRiG Sono contento di aver aiutato!
Tim
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.