EmEditor 下最近常用的两个宏 (自制)
Monday, 10. August 2009, 01:25:39
以下是最近常用的两个宏:
1. 行首空格转Tab(spaceToTab.jsee)
document.selection.Replace("^(\\t*)( )","\\1\\t",eeFindNext | eeFindReplaceCase | eeFindReplaceEscSeq | eeReplaceAll | eeFindReplaceRegExp);
document.selection.Replace("^\\t+$","",eeFindNext | eeFindReplaceCase | eeFindReplaceEscSeq | eeReplaceAll | eeFindReplaceRegExp);
说明: 四个空格对应一个Tab,每点一次替换一层,缩进比较深的情况下得多点几次。
2. 格式化 SQL 字符串(formatSql.jsee)
document.selection.Replace("`","",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(", ","\\n\\t,",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace("\\\\n ","\\n\\t ",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" FROM ","\\nFROM\\n\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" WHERE ","\\nWHERE\\n\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" AND ","\\n\\tAND ",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" LEFT JOIN ","\\n\\tLEFT JOIN ",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" LEFT OUTER JOIN ","\\n\\tLEFT OUTER JOIN ",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" INNER JOIN ","\\n\\tINNER JOIN ",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" GROUP BY ","\\nGROUP BY\\n\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" ORDER BY ","\\nORDER BY\\n\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace(" LIMIT ","\\nLIMIT\\n\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace("\\\\r\\\\n","\\n",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
document.selection.Replace("\\\\t","\\t",eeFindNext | eeFindReplaceEscSeq | eeReplaceAll);
说明: 在调试程序过程中,通过 log 或者画面输出的SQL语句,往往都是很长的一行,分析SQL的语句,几乎每次都要手动添加换行。这样的事,当然要用宏实现。







