Customize your editor for XYALIS files
Resources, white papers, articles
Customize your editor for XYALIS files
Configurations and customization files
This page contains customization files to improve user interface when editing files for GOTmuch, GOTframe or GOTmask.
We provide configuration files for the following editors :
Emacs
Here is the configuration file for emacs in order to automatically indent and highlight keywords in “much”, “frame” and “mask” files.
Ask your system administrator to add this file in the emacs installation or add it into your account.
To do this:
- Copy the following source in a file named “xyalis-mode.el”
- Copy this file into directory .emacs.d in your home directory.
- Edit the file .emacs in your directory (or create it if it doesn’t exist yet)
- Add the following line :
(load “~/.emacs.d/xyalis-mode.el”)
emacs will then automatically recognize files with extension .mch, .msk and .fdf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
;;; emacs mode for MUCH files from XYALIS (require 'font-lock) (provide 'mch-mode) (setq mch-mode-font-lock-keywords (let* ( ;; define several category of keywords (x-types '("VERSION" "MAIN" "PROCESS" "OPTION" "SAWING" "PROPERTY" "RETICLE" "WAFER" "CHIP" "ITEM" "CUTLIST")) (x-functions '("LEVEL" "INSTANCE" "CUTSET")) (x-constants '("TRUE" "FALSE")) ;; generate regex string for each category of keywords (x-functions-regexp (regexp-opt x-functions 'words)) (x-types-regexp (regexp-opt x-types 'words)) (x-constants-regexp (regexp-opt x-constants 'words))) `( (,x-types-regexp . font-lock-type-face) (,x-functions-regexp . font-lock-function-name-face) (,x-constants-regexp . font-lock-constant-face) |
vim
These are the configuration files for vim in order to automatically indent and highlight keywords respectively in “much”, “frame” and mask files.
Copy the following source code in files named “frame.vim” and “much.vim” and copy them in your ~/.vim/syntax directory
Add the following lines to your .vimrc file :
1 2 3 4 5 |
filetype plugin indent on syntax on au BufRead,BufNewFile *.mch set filetype=much au BufRead,BufNewFile *.msk set filetype=much au BufRead,BufNewFile *.fdf set filetype=frame |
For frame : copy the following in file “frame.vim”
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
if exists("b:current_syntax") finish endif let b:current_syntax = "frame" syntax keyword frameKeyword YMIN YMAX XMIN XMAX WIDTH VER USE USED UR UP UL UC TRUE TOPCELL THEN SYM STEPWIDTH STEPHEIGHT SPACEY SPACEX SELF SET SCRIBEWIDTH SCRIBEHEIGHT SCRIBE ROT FROMRIGHT REPEAT REMOVECHIP RC RB PROP PRIORITY OVERLAPY OVERLAPX OVERLAP OUTSIDE MAXWIDTH MAXHEIGHT MAIN FROMLEFT LC LB INSIDE INCLUDE HOR HEIGHT GRID GDS DATA FALSE DOWN DIAMETER DIAGONAL CR CL FROMCENTER CC CB BR BL BC OCR ORC OCL OLC OCC OCB OBC OBR ORB OUR OUL OUC OLB OBL LABEL ARRAY ANY DIE LEFT RIGHT TOP BOTTOM CENTERH CENTERV int ceil floor syntax keyword frameFunction FRAME FORBIDDEN ORDER RETICLE GLOBAL FAMILY ITEM CONSTRAINT SPREAD SELECT highlight link frameKeyword Keyword highlight link frameFunction Function " Integer with - + or nothing in front syn match frameNumber '\<\d\+\>' syn match frameNumber '\<[-+]\d\+\>' " Floating point number with decimal no E or e syn match frameNumber '\<[-+]\d\+\.\d*\>' |
For much : copy the following in file “much.vim”
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
if exists("b:current_syntax") finish endif let b:current_syntax = "much" syntax keyword muchKeyword INCLUDE VERSION RULEFILE EXCLUDE KEEP STRLENGTH GHOSTLAYER GHOSTDIR UUNIT DBUNIT FORMAT VER HOR STEPX STEPY WIDTH HEIGHT SPACE GRID X Y XMIN YMIN XMAX YMAX GDS TOPCELL ROT MAG PRIORITY PROTECT SYM COL ROW PROP NAME FILE DIEX DIEY DIEWIDTH DIEHEIGHT FORBIDDEN FORBIDAREA UNUSEDAREA FIELDAREA DIAMETER THICKNESS MARGIN NOTCHSIZE NOTCHANGLE FLATSIZE FLATANGLE GHOST MEBES MALY SCALE ADDRESS BACKSIDE CLEAR MIRROR SIZE USED LAYER HCUT VCUT GET CUTSET MISSED NUMDIES MININST FIXED PREFER UNCUT MINXEXT MAXXEXT MINYEXT MAXYEXT SAWWIDTH MAXSAW LOST REVERSE ARRAY COLMIN COLMAX ROWMIN ROWMAX syntax keyword muchFunction MASKSET FIELD MASK MAIN MAP STEPPLAN WAFERMAP PROCESS CUTLIST OPTION RETICLE SAWING PROPERTY CHIP MARKER GROUP INSTANCE WAFER ITEM LEVEL highlight link muchKeyword Keyword highlight link muchFunction Function " Integer with - + or nothing in front syn match muchNumber '\<\d\+\>' syn match muchNumber '\<[-+]\d\+\>' " Floating point number with decimal no E or e syn match muchNumber '\<[-+]\d\+\.\d*\>' |
nedit
Here is a customization file for nedit in order to automatically indent and highlight keywords in “much”, “frame” and “mask” files.
To use it, copy this source code in a file named “nedit_xyalis.rc” and the copy thif file into your ~/.nedit folder
Then run nedit with -import option:
nedit -import ~/.nedit/nedit-xyalis.rc
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
! Preferences file for NEdit ! ! This file is overwritten by the "Save Defaults..." command in NEdit ! and serves only the interactively settable options presented in the NEdit ! "Preferences" menu. To modify other options, such as key bindings, use ! the .Xdefaults file in your home directory (or the X resource ! specification method appropriate to your system). The contents of this ! file can be moved into an X resource file, but since resources in this file ! override their corresponding X resources, either this file should be ! deleted or individual resource lines in the file should be deleted for the ! moved lines to take effect. nedit.fileVersion: 5.5 nedit.shellCommands: \ spell:Alt+B:s:ED:\n\ (cat;echo "") | spell\n\ wc::w:ED:\n\ wc | awk '{print $1 " lines, " $2 " words, " $3 " characters"}'\n\ sort::o:EX:\n\ sort\n\ |
-
Categories
- Glossary
- Publications
- Resources
- Whitepapers