CSS 笔记
选择器
基本语法: 选择器 {属性: 值; 属性: 值}
选择器分组:
通配选择器:
类选择器:
多类选择器: (同时包含)
ID 选择器:
后代选择器:
选择子元素:
选择兄弟元素:
伪类选择器: (使用冒号选择)
选择器
基本语法: 选择器 {属性: 值; 属性: 值}
选择器分组:
通配选择器:
类选择器:
多类选择器: (同时包含)
ID 选择器:
后代选择器:
选择子元素:
选择兄弟元素:
伪类选择器: (使用冒号选择)
虽然不一定准确, 但是我还是愿意如下简单的理解:
表达式一定有值
语句不一定有值
表达式(expression), 可以理解为一种短语, 是可以计算(evaluate)出结果的:
"hello"
1 + 1
语句(statement), 可......
前言
读了这么多, 现在觉得 O'REILLY 系列(动物书系列)是真的挺好, 大多数情况下我一定会优先选择和推荐 O'REILLY.
如果 O'REILLY 中没有我需要的书籍才会去考虑其他出版社.
Perl
学习 Perl 基本绕不开这三本骆驼书:
......
可迭代对象 / 迭代器 / 生成器函数 / 生成器表达式 / 生成器
可迭代对象(满足下列条件 1, 2 中任意一个):
实现了 __iter__ 方法, 用于返回一个迭代器.
实现了 __getitem__ 方法. Python 会自动创建一个迭代器并从 0 开始调用 __......
打开 gpedit.cmd, 写入如下内容, 使用管理员权限运行即可.
@echo off
pushd "%~dp0"
dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExten......
在很多地方看到过 Ruby 的块是闭包的说法, 英文文章里也有提到"Ruby block lock is closure". 我想了很久, 找了很多资料, 还是认为这种说法不准确. 至少他们这里讲的闭包的定义和我理解的闭包的定义是不同的.
首先, 我认为闭包必然包括两部分......
名字
Vim Script 是 Vim 用的脚本语言. 似乎正常来说被称为 Vim Script, 而也有的时候被称为 VimL. 反正不管叫啥, 都是指的这个脚本语言就是了.
单引号 / 双引号
单引号和双引号在 Vim Script 中还是有所不同的, 简单来说就是双引号中存在转义, 而......
词法作用域 / 动态作用域
一言以蔽之:
静态作用域作用于空间, 从空间上寻找最近的定义.
动态作用域作用于时间, 从时间上寻找最近的定义.
While there could be any number of static or dynamic policies for sco......
前言
全部以 Python 为例说明.
一等函数
满足如下条件一般可以称为一等对象:
运行时创建
能赋值给变量
能作为参数传递给函数
能作为函数的返回结果
Python 中函数就是一等对象, 也可以叫做一等函数:
# 赋值给变量
def foo():
return ......
查看 yum 源:
sudo yum repolist
更新元数据:
sudo yum makecache fast
删除已有源:
cd /etc/yum.repos.d/
ls
sudo rm epel.repo
删除库的 .rpm 包:
rpm -qa |......
安装 gemgem install sinatra
gem install sinatra-jsonp
使用 sinatra/jsonprequire 'sinatra'
require 'sinatra/jsonp'
require 'httpclien......
origin & master
origin 是远端服务器的默认名字.
master 是默认 branch 的名字. 无论是远端还是本地都可以有 master. 远端的那个 master 分支就叫做 origin/master.
$ git branch -a
* master......
TTL背景
所谓 TTL, 其实是 Tera Term Language 的缩写, 也就是 Tera Term 的专用脚本语言. 那么 Tera Term(Wiki)是个什么东西呢? 其实就是个终端(Terminal), 也就是说跟什么 XSehll, SecureCRT, Putty 之类的东西......
话说这个事儿距今已经差不多一年时间了(2017年底发生的事情), 当时就说要记录一下来着, 但是一直没有写, 拖到现在又想起这个事情来了, 所以翻出当时的聊天记录重新整理记录一下.
背景
事情的背景呢大概就是某(前)同事, 用 Python 写一个脚本工具的时候, 发现总是报错, 报错的那个版......
指针或引用的定义方法
指针有两种定义写法:
// * 靠近变量
int *p_type1;
// * 靠近类型
int* p_type2;
这两种定义方法其实是等效的, 但是我个人现在喜欢使用第二种写法, 即 * 靠近类型, 这样变量名就是变量名, 前面的才是它的类型(比如 int*......