2013-08-03 14 views
7

Ho bisogno di inserire il codice SAS sul mio sito web. Tuttavia, se scrivo il mio codice HTML per evidenziare il codice SAS, mi ci vorrebbe molto tempo.Esiste un accasatore di sintassi per SAS?

Come posso trasformare il codice SAS in una controparte di aspetto piacevole HTML?

+0

Guardare in http://codemirror.net/ –

risposta

5

Vorrei semplicemente copiare/incollare dal tuo editor in un editor di testo avanzato (ad esempio, MS Word o simile) che è in grado di produrre un file HTML. In alternativa, alcuni editor di testo come UltraEdit sono in grado di eseguire il markup SAS.

+0

questo. Oppure, invece di salvare il documento di Word come HTML, copia/incolla da Word al tuo editor HTML preferito. –

1

Non ho trovato nessuna soluzione grande. SAS non sembra essere supportato da nessuno degli evidenziatori javascript.

Almeno tre editor di testo che conosco possono esportare l'HTML colorato negli Appunti (e quindi la tua pagina, o Word o PowerPoint).

  1. Ultraedit
  2. Notepad ++
  3. Emacs (ESS) (su Mac che uso Aquamacs)
  4. (forse) SAS migliorato editor di ... non sono sicuro di questo.

Un'altra possibilità è TextWrangler su Mac per cui è disponibile un file di colorazione della sintassi SAS. Ma non ho provato questo. [aggiornamento: non è molto buono. molte parole chiave mancanti.

Una quinta possibilità è SublimeText 3. Ha un ottimo plugin colorazione della sintassi. Diventa anche y = X * z; * ma questo è davvero un commento; colorato corretto. Il pacchetto colorazione SAS non è incluso di default, ma è scaricabile dal implementing-vdw.blogspot.ch/2012/10/new-sublime-text-package-available-for.html

Una versione di prova è gratuita e ST è cross-platform]

Un po 'off-topic - ma è la domanda successiva :-)

Per la preparazione di documenti e documenti è disponibile un elenco di pacchetti LaTeX (che funziona se si utilizza BeraMono anziché Courier) e un nuovo pacchetto basato su di esso denominato SASnRdisplay. Questi pacchetti producono grandi risultati ed è facile aggiungere parole chiave. Anche per le inserzioni è necessario consentire le parole chiave minuscole con l'opzione sensitive = false.

1

si può utilizzare Enterprise guida?

Quando copio e incollo dalla finestra di modifica EG in qualcosa che supporta il rich text (parola, un email di prospettiva, ecc.), Ottengo tutti i miei colori e l'evidenziazione.

Da qui, basta afferrare il codice HTML e incollarla in linea. Potrebbe non essere l'HTML più carino (l'output WYSIWYG è raramente), ma funziona. In Outlook 2010, è possibile fare clic con il tasto destro e "Visualizza origine" su qualsiasi messaggio inviato/ricevuto (o come trucco, è possibile incollarlo in una e-mail vuota e quindi chiuderlo e visualizzare l'origine nella cartella "Bozze") .

Come ho detto, è un po 'brutto HTML (e tutto su una riga), ma mi piacerebbe pensare che l'uscita di qualsiasi javascript evidenziatore è anche abbastanza brutto:

<b><span style='font-family:"Courier New";color:navy;background:white'>data</span></b><span style='font-family:"Courier New";color:black;background:white'> test;<o:p></o:p></span></p><p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><span style='font-family:"Courier New";color:black;background:white'><span style='mso-spacerun:yes'>&nbsp; </span></span><span style='font-family:"Courier New";color:blue;background:white'>set</span><span style='font-family:"Courier New";color:black;background:white'> test;<o:p></o:p></span></p><p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><span style='font-family:"Courier New";color:black;background:white'><span style='mso-spacerun:yes'>&nbsp; </span></span><span style='font-family:"Courier New";color:blue;background:white'>length</span><span style='font-family:"Courier New";color:black;background:white'> fakevar $</span><b><span style='font-family:"Courier New";color:teal;background:white'>16</span></b><span style='font-family:"Courier New";color:black;background:white'>;<o:p></o:p></span></p><p class=MsoNormal><b><span style='font-family:"Courier New";color:navy;background:white'>run</span></b><span style='font-family:"Courier New";color:black;background:white'>;</span><o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p> 

si può vedere resa qui: http://rendera.heroku.com/usercode/9e1bfaeb9bceb4c052d6747e8e73c1846bad433b

1

Penso che si possa quanto segue:

<script src="https://gist.github.com/AlyssonJalles/b22bc10a707ef909024b.js"></script>

* Forse questa non è una soluzione al 100%, ma è un bene perché quando si aggiorna il codice su Gist, il codice verrà aggiornato nel tuo sito web. Inoltre, se usi wordpress.com, ti basta copiare l'URL e incollare il tuo editor di pagine per vedere il codice.

1

A partire da SAS-Enterprise Guide v5.1, è possibile fare clic con il tasto destro del mouse sulla finestra dell'editor e selezionare "Copia origine HTML negli appunti".

È quindi possibile incollare l'HTML direttamente nel codice sorgente HTML della pagina.

Nota che questo potrebbe funzionare anche nelle versioni precedenti di EG: la versione 5.1 è la versione che ho installato.

Grazie a @otto per aver fornito l'idea originale di utilizzare la Guida Enterprise.

3

Ho appena scoperto che Gist supporta effettivamente l'evidenziazione SAS Syntax!

Questo è ciò che si vede se si crea un file hello_world.sas su Gist.

enter image description here

Se desideri incorporare codici SAS in (ad esempio) un articolo del blog Wordpress.org (come me), il modo in cui faccio di solito questo è:

  1. Creare un Markdown file su Gist. Ad esempio, vedere this Gist Markdown file that I created). Si noti che un "collegamento embed" è stato creato per voi:

enter image description here

  1. Nel tuo sito web Wordpress.org, hanno già il plugin oEmbed Gist già installato.

  2. Quando si crea un nuovo post di blog in Wordpress, nel campo del corpo (in cui normalmente si inserisce il contenuto del post del blog), è sufficiente copiare e incollare il collegamento incorporato di Gist nel corpo.

enter image description here

  1. Pubblica che post sul blog e vedrete che rende bello!

enter image description here

(In alternativa, se si desidera scrivere il tuo post sul blog Wordpress normalmente, e incorporare molteplici codici Gist SAS, semplicemente salvare i file GIST come .sas file (invece di uno .md file), e incorporare più URL Incorpora (corrispondenti a ciascuna blog codice)

Maggiori informazioni vedere this stackoverflow forum -.! dove ho imparato a conoscere il Gist impressionante e Wordpress Gist oEmbed combo

0

per evidenziare il testo in un mac ro immettere la seguente riga:

% macro __enable_eg_syntax_highlight; % mend __enable_eg_syntax_highlight;

Quindi, dove tutto era appena nero, la riga sopra riportata riporterà la formattazione SAS.

saluti Terry

+0

Questo è interessante ma in realtà non risponde alla domanda. –

0

Se si sta creando la propria pagina HTML (e trovare la soluzione Gist indesiderabile), cassa CodeMirror.

http://codemirror.net/mode/sas/index.html

var editor = CodeMirror.fromTextArea(document.getElementById("code"), { 
 
    mode: 'sas', 
 
    styleActiveLine: true, 
 
    lineNumbers: true, 
 
    readOnly: true 
 
});
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.18.2/codemirror.min.css"> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.18.2/codemirror.min.js"></script> 
 

 
<!-- sas language mode --> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.18.2/mode/sas/sas.min.js"></script> 
 

 
<!-- optional plugins --> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.18.2/addon/selection/active-line.min.js"></script> 
 

 
<form><textarea id="code" name="code"> 
 
libname foo "/tmp/foobar"; 
 
%let count=1; 
 

 
/* Multi line 
 
Comment 
 
*/ 
 
data _null_; 
 
    x=ranuni(); 
 
    * single comment; 
 
    x2=x**2; 
 
    sx=sqrt(x); 
 
    if x=x2 then put "x must be 1"; 
 
    else do; 
 
     put x=; 
 
    end; 
 
run; 
 

 
/* embedded comment 
 
* comment; 
 
*/ 
 

 
proc glm data=sashelp.class; 
 
    class sex; 
 
    model weight = height sex; 
 
run; 
 

 
proc sql; 
 
    select count(*) 
 
    from sashelp.class; 
 

 
    create table foo as 
 
    select * from sashelp.class; 
 

 
    select * 
 
    from foo; 
 
quit; 
 
</textarea></form>

0

Io uso Emacs. Se stai usando Windows e non hai familiarità con Emacs, Vincent Goulet fornisce un bel pacchetto con tutti i pacchetti di richiesta preinstallati. Credo che l'unico pacchetto necessario per l'evidenziazione della sintassi SAS sia ESS, comunque.

La creazione dell'output HTML con l'evidenziazione SAS viene eseguita in modo conveniente in modalità Org. Digitare <s e premere TAB per completare automaticamente. Questo crea un blocco di codice sorgente:

#+BEGIN_SRC 

#+END_SRC 

quindi digitare sas di lasciare l'editor sapere che il codice sorgente è il codice SAS.

#+BEGIN_SRC sas 

#+END_SRC 

Qualsiasi codice all'interno del blocco assume quindi l'evidenziazione della sintassi per SAS. La colorazione dipende dal tuo tema. Nel mio caso, il codice è simile al seguente:

enter image description here

Esportazione di un buffer (un documento) in modalità Org è fatto da C-c C-e ('c' è il prefisso org-mode e 'E' stato per l'esportazione). Per esportare in HTML, selezionare h dal menu per esportare come HTML e o per esportare "come file HTML e aprire". Complessivamente, questo è C-c C-e h o.L'HTML risultante, nel mio caso, si presenta così:

enter image description here

Problemi correlati