2016-05-24 8 views
7

を強調します。構文は、大文字を含むキーワードでgeanyにカスタムファイルタイプの強調表示小文字、私は「Phosim」と呼ばれるプログラムの構文強調表示を適用したいと私は一般的に、ファイル拡張子の.catとPhosimプログラムファイル(instanceCatalogs)を保存

今私は拡張子の.catを持つすべてのファイルの構文の強調表示を適用するのが好き。

これまでのところ、私はこれを行っている:
まず私は、ファイルタイプの拡張子の設定ファイルを作成しました:これの内容は、次のようになります~/.config/geany/filetype_extensions.conf
を:

ここ
[Extensions] 
Gnuplot=*.gp;*.gnu;*.plt; 
Galfit=*.gal; 
Phosim=*.cat; 
[Groups] 
Script=Gnuplot;Galfit;Phosim; 

、私はプログラムにカスタムのハイライトを適用しようとしていますGnuplot、Galfit、およびPhosim。 GnuplotとGalfitではうまく動作します。しかし、フォシムにはいくつかの問題があります。

それから私は、ファイル定義の設定ファイル作成:~/.config/geany/filedefs/filetypes.Phosim.conf
次のようになりますその内容:私はシンタックスハイライトを持っ

# example.cat 
angle 30 
Angle_RA 20.0 
object none 

# Till now, 
# Words highlighted : angle 30 object none 
# Words not highlighted: Angle_RA 20.0 
# I like them also to be highlighted! 

# Author : Bhishan Poudel 
# Date : May 24, 2016 
# Version : 1.0 


[styling] 
# Edit these in the colorscheme .conf file instead 
default=default 
comment=comment_line 
function=keyword_1 
variable=string_1,bold 
label=label 
userdefined=string_2 
number=number_2 


[keywords] 
# all items must be in one line separated by space 
variables=object Unrefracted_RA_deg SIM_SEED none 
functions= 
lables=10 
userdefined=angle 30 Angle_RA 20.0 none 
numbers=0 1 2 3 4 5 6 7 8 9 


[lexer_properties] 
nsis.uservars=1 
nsis.ignorecase=1 


[settings] 
# default extension used when saving files 
extension=cat 

# single comments, like # in this file 
comment_single=# 
# multiline comments 
#comment_open= 
#comment_close= 


# This setting works only for single line comments 
comment_use_indent=true 

# context action command (please see Geany's main documentation for details) 
context_action_cmd= 

# lexer filetype should be an existing lexer that does not use lexer_filetype itself 
lexer_filetype=NSIS 


[build-menu] 
EX_00_LB=Execute 
EX_00_CM= 
EX_00_WD= 
FT_00_LB= 
FT_00_CM= 
FT_00_WD= 
FT_02_LB= 
FT_02_CM= 
FT_02_WD= 

が今私のexample.catはこのようになりますただ2つの言葉、すなわち、オブジェクトとなし。 私はそれが大文字を持つためのFortranに等しいスタイリングしようとしたが、それもうまくいきませんでした。

はどのように我々は、大文字、小文字が含まれている変数名の構文ハイライトを取得し、アンダースコアができますか?例えば

objectnone
私は言葉の構文ハイライトを得ました。
しかし、言葉の構文ハイライトを取得できませんでした:Angle_RA20.0

また、私の私の数字は01は、.. 9が強調表示されますが、小数が強調表示されません。小数点をどのように強調することができますか?例えば


Iまし言葉の構文ハイライト:11000しかし、言葉の構文ハイライトを取得できませんでした:180.0

いくつかの便利なリンク49552.3は、以下の通りである:
Make Geany recognize additional file extensions
Custom syntax highlighting in Geany
http://www.geany.org/manual/current/index.html#custom-filetypes 代わりに、クレアチンのhttp://www.geany.org/manual/#lexer-filetype

答えて

2

gの新しいファイル定義ファイルPythonのファイル拡張子を追加してくれました。

たとえば、拡張子が.icatのファイルを強調表示したいのですが、これは興味深いことに、天文学のPhosim Softwareのインスタンスカタログファイルです。)

欠点:追加の単語はまた(の.py、.pycファイル、.ipy Pythonスクリプトで強調表示されます)

注:新しいファイル拡張子と連携もし誰の記事・ソリューション、~/.config/geany/filedefs/filetypes.Phosim.conf Iだろう心から歓迎します。 マイexample.pcatファイルは次のようになります。

# example.pcat 
Unrefracted_RA_deg 0 
Unrefracted_Dec_deg 0 
Unrefracted_Azimuth 0 
Unrefracted_Altitude 89 
Slalib_date 1994/7/19/0.298822999997 
Opsim_rotskypos 0 
Opsim_rottelpos 0 
Opsim_moondec -90 
Opsim_moonra 180 
Opsim_expmjd 49552.3 
Opsim_moonalt -90 
Opsim_sunalt -90 
Opsim_filter 2 
Opsim_dist2moon 180.0 
Opsim_moonphase 10.0 
Opsim_obshistid 99999999 
Opsim_rawseeing 0.65 
SIM_SEED 1000 
SIM_MINSOURCE 1 
SIM_TELCONFIG 0 
SIM_CAMCONFIG 1 
SIM_VISTIME 15000.0 
SIM_NSNAP 1 
object 0 0.0 0.0 20 ../sky/sed_flat.txt 0 0 0 0 0 0 bhishan.fits 0.09 0.0 none 

私はgeanyは黄色、mangentaと数字、および単語青色で「なし」を持つすべての最初の単語を強調表示します。

私は(すでに存在する場合は、編集、または)作成された最初のファイル:

~/.config/geany/filetype_extensions.conf 

そして、その中のものを、次の追加。

[Extensions] 
Gnuplot=*.gp;*.gnu;*.plt; 
Galfit=*.gal; 
Phosim=*.pcat; 
Python=*.py;*.pyc;*.ipy;*.icat;*.pcat 
[Groups] 
Script=Gnuplot;Galfit;Phosim;Python; 

次に、追加のキーワードをpythonファイルタイプの既存のキーワードに追加しました。このため
私が作成した(または、既に存在する場合は、編集)ファイル:

~/.config/geany/filedefs/filetypes.python 

今すぐ、ファイル~/.config/geany/filedefs/filetypes.pythonは次のようになります。今

# Author : Bhishan Poudel 
# Date : June 9, 2016 
# Version : 1.0 
# File : Filetype for both python and phosim_instance_catalogs 

[styling] 
default=default 
commentline=comment_line 
number=number_1 
string=string_1 
character=character 
word=keyword_1 
triple=string_2 
tripledouble=string_2 
classname=type 
defname=function 
operator=operator 
identifier=identifier_1 
commentblock=comment 
stringeol=string_eol 
word2=keyword_2 
decorator=decorator 


[keywords] 
# all items must be in one line 
primary=and as assert break class continue def del elif else except exec finally for from global if import in is lambda not or pass print raise return try while with yield False None True Words_after_this_are_for_Phosim_pcat_files Unrefracted_RA_deg Unrefracted_Dec_deg Unrefracted_Azimuth Unrefracted_Altitude Slalib_date Opsim_moondec Opsim_rotskypos Opsim_rottelpos Opsim_moondec Opsim_moonra Opsim_expmjd Opsim_moonalt Opsim_sunalt Opsim_filter Opsim_dist2moon Opsim_moonphase Opsim_obshistid Opsim_rawseeing SIM_SEED SIM_MINSOURCE SIM_TELCONFIG SIM_CAMCONFIG SIM_VISTIME SIM_NSNAP object 


identifiers=ArithmeticError AssertionError AttributeError BaseException BufferError BytesWarning DeprecationWarning EOFError Ellipsis EnvironmentError Exception FileNotFoundError FloatingPointError FutureWarning GeneratorExit IOError ImportError ImportWarning IndentationError IndexError KeyError KeyboardInterrupt LookupError MemoryError NameError NotImplemented NotImplementedError OSError OverflowError PendingDeprecationWarning ReferenceError RuntimeError RuntimeWarning StandardError StopIteration SyntaxError SyntaxWarning SystemError SystemExit TabError TypeError UnboundLocalError UnicodeDecodeError UnicodeEncodeError UnicodeError UnicodeTranslateError UnicodeWarning UserWarning ValueError Warning ZeroDivisionError __debug__ __doc__ __import__ __name__ __package__ abs all any apply basestring bin bool buffer bytearray bytes callable chr classmethod cmp coerce compile complex copyright credits delattr dict dir divmod enumerate eval execfile exit file filter float format frozenset getattr globals hasattr hash help hex id input int intern isinstance issubclass iter len license list locals long map max memoryview min next object oct open ord pow print property quit range raw_input reduce reload repr reversed round set setattr slice sorted staticmethod str sum super tuple type unichr unicode vars xrange zip array arange Catagorical cStringIO DataFramedate_range genfromtxt linspace loadtxt matplotlib none numpy np pandas pd plot plt pyplot savefig scipy Series sp StringIO 


[lexer_properties] 
fold.comment.python=1 
fold.quotes.python=1 


[settings] 
# default extension used when saving files 
extension=py 

# the following characters are these which a "word" can contains, see documentation 
wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

# MIME type 
mime_type=text/x-python 
comment_single=# 
comment_open=""" 
comment_close=""" 
comment_use_indent=true 

# context action command (please see Geany's main documentation for details) 
context_action_cmd= 


[indentation] 
width=4 
# 0 is spaces, 1 is tabs, 2 is tab & spaces 
type=0 


[build_settings] 
# %f will be replaced by the complete filename 
# %e will be replaced by the filename without extension 
# (use only one of it at one time) 
compiler=python -m py_compile "%f" 
run_cmd=python "%f" 


[build-menu] 
FT_00_LB=Execute 
FT_00_CM=python %f 
FT_00_WD= 
FT_01_LB= 
FT_01_CM= 
FT_01_WD= 
FT_02_LB= 
FT_02_CM= 
FT_02_WD= 
EX_00_LB=Execute 
EX_00_CM=clear; python %f 
EX_00_WD= 
error_regex=([^:]+):([0-9]+):([0-9:]+)? .* 
EX_01_LB= 
EX_01_CM= 
EX_01_WD= 

、私はgeanyを再起動し、私が見ることができますすべての最初の単語は黄色で、数字は他の色になり、「なし」という単語は青色になります。

関連する問題