主页

Clang Format命令行调用时遇到的小坑(vim)

写在前面 最近开始用neovim作为IDE了, 虽然参考了大佬的配置, 自己也学会了一些Lua语言的配置方法, 但是还是难免遇到一些奇奇怪怪的玄学问题, 不过,最终还是解决了. 问题描述: 在vim调用``clang-format`时候, 总是不会正常的进行格式化, 也没有任何报错.格式化的代码如下(通过命令行进行调用) clang-format -style='{BasedOnStyle: Google, IndentWidth: 4, SortIncludes: false, AccessModifierOffset: -4, ContinuationIndentWidth: 4, AlignAfterOpenBracket: true, AlignOpe...

阅读更多

Neovim中并行运行宏的快捷操作与lua脚本实现

写在前面 最近入坑vim了, 主要是想整一个纯键盘操作的编辑器, 用sublime当然方便, 但是还是需要鼠标点点点, 不知不觉中降低了效率. (但是过渡阶段还是得先用sublime的) 之前一个朋友就推荐过neovim, 并且帮我配置了在Mac的iTerm上的nvim环境, 当时没学过lua感觉配置起来bug很多, 为了稳定还是一直用的sublime, 直到后来我发现sublime的编译以及运行一些代码的时候需要很繁琐的配置, 格式化代码的插件也几乎都是8~9年前的了, 用起来很不方便, 于是还是想转入vim阵营((我是一直追求轻量级的)). 最近也一直在研究lua的一些基本语法, 不得不说lua脚本的语法真的是一股清流, 我以前就以为Python就是相当简洁明了的脚本了...

阅读更多

从系统调用角度看unix,linux文件权限

写在前面 最近开始看APUE, 其中文件访问权限部分一开始有点不懂, 后来发现就是简单的chmod命令的宏形式, 下面简单总结一下, 参考<sys/stat.h>. 文件权限 st_mode 含义 八进制值 英文注记 S_IRUSR 用户读 4 READ USER S_IWUSR 用户写 2 WRITE USER S_IXUSR 用户执行 1 EXEC USER ...

阅读更多

在m1mac上配置mit6.s081的riscv系统环境

写在前面 最近想学一下OS的一些内容, 斟酌良久, 选择MIT的6.SO81课程(2021), 链接:6.S081 / Fall 2021 (mit.edu). 第一步先从配置Lab环境开始, 由于我的mac是M1芯片, 安装RISCV花了不少时间, 不过还是在强大的开发者帮助下完成了, 下面记录一下. 参考了课程主页的工具链配置部分1. 安装基本工具 首先需要安装包管理工具brew, 这里可以看我之前的文章, 写的相当详细了. 这里直接从brew安装之后说. brew tap riscv/riscv brew install riscv-tools # 这步需要的时间很长 brew install qemu 上面的第二步我遇到了一个问题: When I install...

阅读更多

力扣面试题寻找消失的两个数字多解法总结

题目 面试题 17.19. 消失的两个数字 难度困难 给定一个数组,包含从 1 到 N 所有的整数,但其中缺了两个数字。你能在 O(N) 时间内只用 O(1) 的空间找到它们吗? 以任意顺序返回这两个数字均可。 示例 1: 输入: [1] 输出: [2,3] 示例 2: 输入: [2,3] 输出: [1,4] 提示: nums.length <= 30000 分析与代码 这里一开始我想的当然是用下面这种方法, 但是可惜, 时间复杂度飙升, 直接TLE: class Solution: def missingTwo(self, nums: List[int]) -> List[int]: ans=[] ...

阅读更多

不使用oh My Zsh配置轻量级zsh环境

写在前面 之前一直在用一款名为oh-my-zsh的插件, 在我的MacOS上, 配置起来主题以及各种插件都比较方便, 但是, 最近在archlinux上面, 我用了omz之后, 速度下降了很多(archlinux虚拟机,还是采用架构虚拟化的方式,在arm上模拟出x86_64), 于是我就想着卸载omz然后直接安装代码补全和高亮插件, 这里参考了一篇国外开发者的博客1, 主要用到的插件是: zdharma-continuum/fast-syntax-highlighting: Feature-rich syntax highlighting for ZSH; zsh-users/zsh-autosuggestions: Fish-like autosuggestions f...

阅读更多

Sublime使用clang Format格式化c,c++代码

写在前面 前几天刚吹捧完Astyle这款代码格式化插件, 最近又不得不进行改变了, 原因就是C++20中新增的三路比较运算符, 长这样:<=>, 使用Astyle一格式化就变成了:<= >, 鉴于这个问题, google也没给出合适的答案, 反而是一个两年前的bug issue还没修复1映入眼帘.. 不得已, 我关闭了pad-oper这个选项, 使得Astyle在格式化C++时候不会在操作符两边填充空格, 但是这就导致了代码比较紧凑, 看来接着用Astyle是不可能了. 下面还是看看使用mac原生的clang进行代码格式化的操作吧… 安装clang-format 光有xcode的开发者工具还不行, 还要用brew安装llvm后端支持, 并将其添加到配置...

阅读更多

Sublimeastyle针对c++20三路运算符的格式化调整

写在前面 之前文章介绍过关于在sublime编辑器中格式化C/C++ 代码的最佳方式, 但是昨天尝试用C++20新增的三路运算符时候突然被格式化掉了, 具体例子如下: auto ans1 = a <=> b; // 被格式化为 auto ans1 = a <= > b; 这就成了一个显然的语法错误了, 一开始我想通过更新插件或者看issue的方式解决, 但是这个项目已经不活跃了, 没办法,只能靠自己了. 配置方法 首先进入官方文档1, 但是选项太多了, 找起来不方便… 后来参考的gist2, 还是不错的, 通过在家目录下配置.astylerc文件完成配置, 这里除了复制全部的内容并新建文件, 还需要修改一个选项, 如下: cd ~ vim .ast...

阅读更多

Total views.
您是Zorch的第 个小伙伴
Hits