【Sublime详解】mac最好用的编辑器-配置-插件- Alignment-费元星

########################

先同步下自己用了8年多的配置:

mac 打开配置快捷键:command+,    逗号

// Settings in here override those in "Default/Preferences.sublime-settings",
// and are overridden in turn by syntax-specific settings.
{// 中文错位解决办法"font_options":["gdi"],// 每次打开文件,在一个窗口打开"open_files_in_new_window": false, // 鼠标失去聚焦后,自动保存"save_on_focus_lost": true,// 自动换行"word_wrap": "auto",//显示制表符  会吧空格也显示出来"draw_white_space":"all","hot_exit": true,"remember_open_files": true,"update_check": false,"color_scheme": "Packages/Color Scheme - Default/Breakers.sublime-color-scheme","font_size": 12,"ignored_packages": ["Vintage",],"index_files": true,"alignment_prefix_chars":[" ","+","--","-","//","/",".","*","="],// 当前行高亮"highlight_line": false,// 窗口右下角显示打开文件的编码"show_encoding": true, // 显示行号右侧的代码段闭合展开三角号"fade_fold_buttons": false, //显示全路径"show_full_path": true, //保存的时候把无用的空格去掉"trim_trailing_white_space_on_save": true,// 双击文件 在tab里打开 不是window/*"open_files_in_new_window": false,*///加粗文件夹名称"bold_folder_labels": true,// 一个tab 4个空格"tab_size":4,"font_face": "Ubuntu Mono",}

##########################

#Sublime Text 编辑器 插件 之

"Sublime Alignment" 详解

Sublime Alignment 主要用于代码对齐,最新版据说已经集成了这个插件。 下载地址:

  • Sublime Text 2
  • Sublime Text 3
  • Sublime Alignment 插件

插件安装方式、以及较好的插件推荐,如下:

Sublime Text 2 入门及技巧 | Lucifr

编码神器 Sublime Text 包管理工具及扩展大全 - 开源中国社区


Mac上的设置文件位置:
左上角Sublime Text -> Preferences -> Package Settings ->Alignment 如果没有最后的"Alignment"选项,说明你还没有安装此插件。

这里面有5个选项:

  • Settings- Default
  • Settings- User
  • Settings- Syntax Specific - User
  • Key Bildings - Default
  • Key Bildings - User

带有后缀Default的,为默认设置,每次升级插件都会重置这里的设置。所以尽量不要修改这里,否则升级会丢失你原先的设置。

带有后缀User的,为用户自定义设置,你可以把Default里面的设置全部复制一份到这里,然后再修改,这里存在的设置选项会覆盖Default里面的,即User的优先级更高。

Key Bildings为快捷键设置,默认的快捷键很有可能因为和其他快捷键冲突而无效, 所以及可以在Key Bildings - User里重新设置(格式可以仿照Default里的写法)。
此快捷键是用来 实现对齐的。


这个插件的默认设置Settings- Default如下:

{// If the indent level of a multi-line selection should be aligned"align_indent": true,// If indentation is done via tabs, set this to true to also align// mid-line characters via tabs. This may cause alignment issues when// viewing the file in an editor with different tab width settings. This// will also cause multi-character operators to be left-aligned to the// first character in the operator instead of the character from the// "alignment_chars" setting."mid_line_tabs": false,// The mid-line characters to align in a multi-line selection, changing// this to an empty array will disable mid-line alignment"alignment_chars": ["="],// If the following character is matched for alignment, insert a space// before it in the final alignment"alignment_space_chars": ["="],// The characters to align along with "alignment_chars"// For instance if the = is to be aligned, there are a number of// symbols that can be combined with the = to make an operator, and all// of those must be kept next to the = for the operator to be parsed"alignment_prefix_chars": ["+", "-", "&", "|", "<", ">", "!", "~", "%", "/", "*", "."]
}

##参数详解

下面为原始测试数据

int aa = 1;char bb = 'a';float fff = 2;
unsigned int d = 1;

###"align_indent":

开关量,默认为true,

  • true,则把选择的多行的 不同缩进级别也变成相同的缩进(最大的缩紧级别),结果如下:
        int aa = 1;char bb = 'a';float fff = 2;unsigned int d = 1;
  • flase,只是对齐,不改变缩进级别
int aa            = 1;char bb       = 'a';float fff = 2;
unsigned int d    = 1;

###"mid_line_tabs"

开关量,默认为false。
如果你的文本是使用Tab键缩进排版,设置该变量为true时,那么该插件在对齐文本的时候也使用Tab键来对齐缩进。
但是这样可能会出现问题,因为Tab键在不同的编辑器上代表的空格数可能不同(Sublime 是代表4个空格), 当你使用别的编辑器打开该文件时,简而言之,就是排版可能就不是对齐的了。


###"alignment_chars"

对齐字符

这是一个数组,可以这样设置多个字符:alignment_chars": ["=","*","a"]
默认只有“=”字符,即alignment_chars": ["="]
数组里面的字符就是放在中线对齐的字符。
如下面都把“=”排成一列中线对齐

        int aa         = 1;char bb        = 'a';float fff      = 2;unsigned int d = 1;

例如设置里增加“*”号,即:alignment_chars": ["=","*"]
结果如下:

原文:

int *aa = 1;char *bb = 'a';float *fff = 2;
unsigned int *d = 1;

排列对齐后:(把“*”号排成对齐的一列)

        int          *aa = 1;char         *bb = 'a';float        *fff = 2;unsigned int *d = 1;

###"alignment_space_chars"

和**"alignment_chars"**一样,也是数组格式 默认值包含“=”号,即:alignment_space_chars": ["*","="]

就是这个数组包含上面**"alignment_chars"里的字符, 对齐后,在其前面增加一个空格。
如果这里不包含
"alignment_chars"**里的字符,对齐后,在其前面没有空格。

可以这样说, **"alignment_space_chars"数组是"alignment_chars"**数组的子集。

原文还在文章的起始处,这里设置包含“=”,
alignment_space_chars": ["="]
结果如下:

        int aa         = 1;char bb        = 'a';float fff      = 2;unsigned int d = 1;

这里设置不包含任何字符,
alignment_space_chars": []
结果如下:

        int aa        = 1;char bb       = 'a';float fff     = 2;unsigned int d= 1;

###"alignment_prefix_chars"

即:前缀字符 默认设置:
"alignment_prefix_chars": ["+", "-", "&", "|", "<", ">", "!", "~", "%", "/", "*", "."]

对齐字符(即alignment_chars"里的字符),可以拥有前缀字符。
例如"="号字符前可以拥有以上字符作为前缀。

原文设置如下:(这里的前缀字符有 "!"、"<"符号)

int aa = 1;char bb != 'a';float fff <= 2;
unsigned int d = 1;

对齐后如下:(即把前缀字符+对齐字符一起当作对齐字符来对待)

        int aa         = 1;char bb        != 'a';float fff      <= 2;unsigned int d = 1;

##总结

可按照以上的参数说明,自己增加对齐的字符来增强功能。
我一般需要在对齐字符前面增加一个空格,
所以我一般就保持alignment_chars 数组和 alignment_space_chars数组一致。即在所有的对齐字符前面都增加一个空格。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/808812.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录算法训练营第三十一天| 455.分发饼干、376.摆动序列、53.最大子序和

系列文章目录 目录 系列文章目录455.分发饼干贪心算法大饼干喂胃口大的&#xff08;先遍历胃口&#xff09;胃口大的先吃大饼干(先遍历饼干&#xff09;小饼干先喂胃口小的&#xff08;先遍历胃口&#xff09;胃口小的先吃小饼干&#xff08;先遍历饼干&#xff09; 376. 摆动序…

ABR 车路协同场景

#include <iostream> #include <sstream> #include <vector> #include <regex> #include <string> using namespace std; int main() { // 创建一个字符串&#xff0c;用于存储输入 string input; // 从标准输入读取一行 get…

原 Excel 文件中的偶数行替换成对应上下两行的平均值

实现代码 import openpyxl# 打开Excel文件 input_file input.xlsx output_file input3.xlsx wb openpyxl.load_workbook(input_file) output_wb openpyxl.Workbook()# 处理每个工作表 for sheet_name in wb.sheetnames:sheet wb[sheet_name]# 新建一个工作表&#xff0c;…

14-pyspark的DataFrame使用总结

目录 前言DataFrame使用总结 DataFrame的构建方法1&#xff1a;通过列表构建方法2&#xff1a;通过Row对象构建方法3&#xff1a;通过表Schema构建 方法4&#xff1a;rdd结合字符串构建 DataFrame的方法 PySpark实战笔记系列第五篇 10-用PySpark建立第一个Spark RDD(PySpark实战…

CSGO游戏搬砖,落袋为安才是王道

1.市场燃了&#xff0c;都在赚钱&#xff0c;谁在赔钱&#xff1f; 首先要分清“纸面富贵”和“落袋为安”。市场燃了&#xff0c;你库存里的渐变大狙从5000直接涨到了1W&#xff0c;你赚到5000了吗&#xff1f;严格讲&#xff0c;你需要把库存里的渐变大狙卖出去&#xff0c;提…

每天五分钟深度学习:逻辑回归算法的损失函数和代价函数是什么?

本文重点 前面已经学习了逻辑回归的假设函数,训练出模型的关键就是学习出参数w和b,要想学习出这两个参数,此时需要最小化逻辑回归的代价函数才可以训练出w和b。那么本节课我们将学习逻辑回归算法的代价函数是什么? 为什么不能平方差损失函数 线性回归的代价函数我们使用…

2024-基于人工智能的药物设计方法研究-AIDD

AIDD docx 基于人工智能的药物设计方法研究 AI作为一种强大的数据挖掘和分析技术已经涉及新药研发的各个阶段&#xff0c;有望推动创新药物先导分子的筛选、设计和发现&#xff0c;但基于AI的数据驱动式创新药物设计和筛选方法仍存在若干亟待解决的问题。我们课题组的核心研究…

基于达梦数据库开发-python篇

文章目录 前言一、搭建demo前提初始化简单demo 二、可能出现的异常情况DistutilsSetupErrorNo module named dmPythonlist报错 总结 前言 出于信创的考虑&#xff0c;近年来基于国产数据库达梦的应用开发逐渐变多。本文将介绍在windows环境下基于DM8版本的python的简单开发使用…

matlab使用教程(40)—二维傅里叶变换和多项式插值

1使用 FFT 进行多项式插值 使用快速傅里叶变换 (FFT) 来估算用于对一组数据进行插值的三角函数多项式的系数。 1.1数学中的 FFT FFT 算法通常与信号处理应用相关&#xff0c;但也可以在数学领域更广泛地用作快速计算工具。例如&#xff0c;通常通过解算简单的线性系统来计算…

24/04/11总结

IO流(First edition): IO流&#xff1a;用于读入写出文件中的数据 流的方向&#xff08;输入指拿出来,输出指写进去) 输入流:读取 输出流:写出 操作文件类型 字节流:所有类型文件 字符流:纯文本 字节流: InputStream的子类:FileInputStream:操作本地文件的字节输入流 OutputSt…

ssm036基于Java的图书管理系统+jsp

图书管理系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本图书管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处…

数位排序-自定义比较函数

数位排序 4653. 数位排序 - AcWing题库 题目大意&#xff1a;输入两个数&#xff0c;n,m。 将1~n的数&#xff0c;按照以下规则排序&#xff1a; ​ 当两个数各个数位之和不同时&#xff0c;将数位和较小的排在前面&#xff0c;当数位之和相等时&#xff0c;将数值小的排在…

光伏电站运维管理系统功能全面详解

一、系统概述 光伏电站运维管理系统是一款专为光伏电站设计的综合性管理平台。该系统集成了先进的数据监测、故障诊断、运维任务管理、设备信息管理、用户权限管理以及系统维护与升级等功能&#xff0c;旨在提供全面、高效、智能的光伏电站运维服务&#xff0c;确保电站安全、…

java国产化云HIS基层医院系统源码 SaaS模式

目录 ​ 云HIS开发环境 功能模块介绍&#xff1a; 1、门诊模块 2、住院模块 3、药房、药库模块 ​编辑 4、电子病历模块 5、统计报表模块 6、系统管理模块 系统优势 云his之电子病历子系统功能 云 his 系统是运用云计算、大数据、物联网等新兴信息技术&#xff0c;按…

【C++初阶】C++简单入门(长期维护)

本篇博客是对C的一些简单知识分享&#xff0c;有需要借鉴即可。 C简单入门目录 一、C前言1.C的概念&#xff1a;2.C发展历程3.C如何学&#xff1f; 二、C入门1.C关键字(C98标准)2.命名空间3.C输入&输出①概念说明②使用说明③特征说明④细节拓展⑤cout与cin的意义 4.缺省参…

JavaScript_注释数据类型

JavaScript_语法_注释&数据类型&#xff1a; 1.2注释&#xff1a; 1.单行注释&#xff1a;//注释内容 2.多行注释&#xff1a;/*注释内容*/ 1.3数据类型&#xff1a; 1.原始数据类型(基本数据类型)&#xff1a;&#xff08;只有这五种&#xff09; 1.number&#xff1a;数字…

参花期刊投稿发表论文

《参花》是由国家新闻出版总署批准&#xff0c;吉林省文化和旅游厅主管&#xff0c;吉林省文化馆主办的正规文学类期刊。文学是用语言塑造形象反映社会生活的一种语言艺术&#xff0c;是自觉、独立而又面向整个社会的艺术&#xff0c;是文化中极具强烈感染力的重要组成部分&…

经典机器学习模型(八)梯度提升树GBDT详解

经典机器学习模型(八)梯度提升树GBDT详解 Boosting、Bagging和Stacking是集成学习(Ensemble Learning)的三种主要方法。 Boosting是一族可将弱学习器提升为强学习器的算法&#xff0c;不同于Bagging、Stacking方法&#xff0c;Boosting训练过程为串联方式&#xff0c;弱学习器…

如何在 7 天内掌握C++?

大家好&#xff0c;我是小康&#xff0c;今天我们来聊下如何快速学习 C 语言。 本篇文章适合于有 C 语言编程基础的小伙伴们&#xff0c;如果还没有学习过 C&#xff0c;请看这篇文章先入个门&#xff1a;C语言快速入门 引言&#xff1a; C&#xff0c;作为一门集面向过程和…

【Python】科研代码学习:十七 模型参数合并,safetensors / bin

【Python】科研代码学习&#xff1a;十七 模型参数合并&#xff0c;safetensors / bin 前言解决代码知识点&#xff1a;safetensors 和 bin 的区别&#xff1f;知识点&#xff1a;save_pretrained 还会新增的文件知识点&#xff1a;在保存模型参数时&#xff0c;大小发生了成倍…