跳至正文

yml格式检查,yml文件使用方法

.yml文件,编辑后,要检查语法是否有错误,怎么检查

.yml文件,编辑后,要检查语法是否有错误,怎么检查

点击工具菜单上的语法检查项目,自动进行检查

求大佬,我的世界GroupManager权限组管理怎么用?

求大佬,我的世界GroupManager权限组管理怎么用?

基本命令:

manuadd 123 XXX 将玩家123添加到XXX用户组;

manudel 123 将玩家123变为默认组;

manuaddsub 123 XXX 将XXX用户组添加到玩家123的子用户组列表中;

manudelsub 123 XXX 将XXX用户组从玩家123的子列表中剔除;

manuaddp 123 essentials.* 为玩家123单独增加essentials.*权限(由于大部分权限都由Essentials基础插件提供,所以这是一般形式);

manudelp 123 essentials.* 删除玩家123拥有的essentials.*权限;

manulistp 123 列出玩家123所拥有的权限;

manucheckp 123 essentials.* 检查玩家123是否拥有essentials.*权限,并寻找出处(用户组);

manuaddv 123 prefix &1 设置玩家123的prefix变量为&1(变量目前有prefix(前缀)、suffix(尾缀)、build(破坏方块)三种,已有效);

manudelv 123 prefix 删除玩家123的prefix变量;

manulistv 123 列出玩家123所拥有的变量(虽然无效,但看还是能看的);

manucheckv 123 prefix 查看玩家123的prefix变量属性(这里看的是用户组里的);

mangadd XXX 添加名为XXX的用户组;

mangdel XXX 删除名为XXX的用户组;

mangaddp XXX essentials.* 为用户组XXX增加essentials.*权限;

mangdelp XXX essentials.* 删除用户组XXX拥有的essentials.*权限;

manglistp XXX 列出用户组XXX所拥有的权限;

mangcheckp XXX essentials.* 检查用户组XXX是否拥有essentials.*权限,并寻找出处;

mangaddv XXX prefix &1 设置用户组XXX的prefix变量为&1;

mangdelv XXX prefix 删除用户组XXX的prefix变量;

manglistv XXX 列出用户组XXX所拥有的变量;

mangcheckv XXX prefix 查看用户组XXX的prefix变量属性;

mangaddi XXX1 XXX2 使用户组XXX1继承用户组XXX2的权限;

mangdeli XXX1 XXX2 将用户组XXX2从用户组XXX1的继承列表中删除(这个命令经测试发现有问题,删除不了);

manpromote 123 XXX 将玩家123升级到XXX用户组;

mandemote 123 XXX 将玩家123降级到XXX用户组

listgroups 列出目前所存在的用户组。

github windows 使用什么语言开发的

github windows 使用什么语言开发的

Github在3月19号开放了新的项目展示页面(Showcase),Showcase根据项目属性来组织、定义一系列的开源项目列表,可以更清晰的发现你所需要的开源项目。在3月26日的Showcase中,Github放出了一个新的类目:支撑Github的开源技术,这里列举了Github所使用的一些主要的开源项目。

如下是这些开源项目的介绍:

linguist

语言识别库,能够自动根据项目的代码来识别你所使用的语言。 在你的项目源代码页面,可以看到一个彩条,点开以后会显示项目中的编程语言比例。linguist主要通过文件的后缀来识别,对于一些通用的扩展名,例如.m文件,linguist通过一些语言的特征片段来做判断。由于编程语言很多,linguist还不能覆盖所有语言的检测。

jquery-pjax

pjax是Github的联合创始人之一defunkt的作品,它使用html的pushState特性与ajax,可以实现页面内容动态局部刷新,当点击项目源代码页面中具体的一个文件或者文件夹时,你将会看到页面的其他部分是不变的,只有定义的页面DOM会刷新,这里使用的就是pjax。

elasticsearch

Eleasticsearch支撑了Github的搜索功能,2年之前Github使用Solor做搜索,随着用户和托管项目的增加,索引的大小超过了solor节点的最大存储空间,也出现了很多的问题,Github团队在思考解决方案时决定使用Elasticsearch做替换。Github最开始使用ES时,使用了44台亚马逊EC2实例,每台实例配备2T的存储,其中8台实例指负责查询请求。目前,Github已经将原有的EC搜索集群迁移到了东海岸的一个数据中心,使用8台物理主机替换了44台EC2。

Rails

Ruby实现的MVC Web框架。Github的用户界面和功能大部分基于Rails构建,不过需要注意的是现在虽然Rails的项目版本已经发展到了Rails 4,但是Github依旧使用的是自己维护的2.3分支,对于不保持和现有的Rails主版本号一致的原因,Github员工Kneath做了如下的解释:

. 花更过的时间来升级更新Rails,将会减少为用户构建新特性的时间,我们更关注用户;

. 性能问题是一个很重要的考虑。在过去的几年中,我们极大的减少了响应时间。而升级Rails不仅会带来一个更慢的框架,而且还会引入一个不同的架构——我们需要再根据新的框架特性来定位优化性能。我们对于现有的框架已经做了很多的优化以保持性能稳定,最主要的是:将时间花费在升级上不会让我们的架构更快。

. 过去的三年我们一直在升级这个堆栈,不升级Rails版本我们依然可以使用新的特性。

Redis

Redis是K/V存储系统,知名的NoSQL实现之一,在Github,主要使用Redis来进行队列中的异常处理。在Github早期,曾尝试过很多的基于Ruby的队列机制,也曾使用Amazon SQS,但是这些方案都不能在Github快速增长的同时满足稳定性要求,最终Github迁移到了使用Redis的技术方案resque。

sprocket

Sprocket是一个网站资源打包的Ruby库,它不仅能够管理JavaScript和CSS资源,还可以按照pipline的方式来流式预处理CoffeeScript、Sass、SCSS和LESS代码等;

libgit2

libgit2是一个可移植、纯C语言实现的Git核心方法类库,提供API重新链入Git方法。Github的背后使用的原生的git来实现commit、push等功能,但是使用libgit2来针对桌面应用调用、Ruby代码中调用等;

rugged

libgit2的Ruby类库;

bcrypt-ruby

OpenBSD bcypt()密码哈希算法的Ruby实现;

html-pipeline

html-pipline是一个gem包,可以将现有Github前端HTML中的一些特性进行流式处理,例如在Github的评论框中,你可以@某一个人、输入emoji的表情、使用markdown的语法来写内容等,但是这些都是由单独的插件来控制的,html-pipeline可以流式的使用相应的插件处理原始内容,例如先将markdown转义成html,继而自动添加emoji表情,然后进行代码的语法高亮等。

gemoji

在2013年的QCon北京前夜:Github Drink Up活动中,来自Github的工程师Tim在现场的活动中谈到了他们的一个文化:使用emoji。他解释道:“很多情感使用文字不能做出形象的表达,但是使用emoji表情却能够起到不一样的效果”。在Github现有评论框或其他内容中,都可以看到emoji的身影,所使用的就是gemoji这个gem包。

jekyll

Jekyll是一个静态博客生成的程序,Github中项目的Page页面,默认选型使用的就是jekyll。

gollum

Gollum是一套基于git的wiki系统,Github项目的wiki系统背后使用的就是这套开源框架;

octokit.rb

Github API的官方Ruby SDK;

Hubot

Hubot是Github自行开发的一个聊天机器人,当然它已经超过了聊天机器人的范畴,Github作为一个异步办公的团队,日常的协作、沟通很大部分依赖于聊天室,通过Hubot,Github的员工可以在聊天室中给机器人定制一些特定的回复、3D打印模型,甚至通过hubot来部署生成环境的代码、获取服务状态等,在2013年的QCon北京中,Giuthub的工程曾针对如何使用Hubot做运维进行过分享:《ChatOps at GitHub》。

d3

d3是使用JavaScript实现的数据可视化框架,使用HTML、SVG和CSS等,在d3的基础之上发展处诸如crossfilter、NVD3.js等一系列扩展或者简化框架,并且形成了一个良好的社区。作者mbostock目前供职于NYTimes,d3是他的博士论文项目,目前Github使用d3来展示托管项目提交历史、记录等的可视化效果图。

plax

plax是控制视差元素的JavaScript类库,你可以在404、505等页面看到它的实现效果。

ace

Ace是一个使用Javascript开发的代码编辑器,具备语法高亮、快捷键绑定等特性, Github使用Ace实现基于web的代码编辑功能。

zepto

Zepo是一个JavaScript框架,其特点是兼容现有jQuery API的同时,自身体积十分小;

zeroclipborad

Github的“点击复制到粘贴板”的功能就是使用的zeroclipboard,zeroclipboard使用一个不可见的Adobe Flash动画来实现复制粘贴,并提供Javascript的API接口以供调用。

charlock_holmes

charlock_holmes用来检测字符编码格式,并可以自动将字符编码转化成UTF-8。

puppet

服务器运维工具,可以进行自动化部署、集群管理等。

moment

moment是一个日期框架,用于解析、验证、格式化日期等,其中一个常用的功能是将原始的Javascript时间类型转化成方便阅读的时间说明格式,例如:”2小时之前“、”3天之前“这种形式。

bower

前端资源包管理工具,可以通过bower install 的形式将常用的前端资源下载到本地的项目目录中,例如:bower install bootstrap将会自动下载bootstrap的项目资源到本地的项目目录中,不需要自己手动来下载、移动资源文件,并且通过配置文件可以方便分享给同事、简化项目初始化等; resque Resque是Github Enterprise中使用的一个基于Redis的后台作业控制系统,提供可视化的界面,可以方便的监控后台作业的运行状态和监控情况。 另外,Github还发布了“支撑Github Windows客户端的开源项目”和“支撑Github Mac客户端的开源项目”两个Showcase。

新人求教,选择反编译全部然后显示失败

反编译后的文件夹内丢失apktool.yml文件!

这个文件是APKTOOL工具回编译时必要的文件,在反编译APK时会自动生成,里面包含APKTOOL反编译某个APK文件的相关信息!此文件内容不可包含中文!

格式如下:

version: 1.4.3

apkFileName: BluetoothFileTransfer_Ad-free_4.80.apk

isFrameworkApk: false

usesFramework:

ids:

– 1

第一行代表APKTOOL程序的版本

第二行是APK程序名称

第三行是说明该APK是不是Framework级的文件

第四行到最后,我不是很清楚,估计是使用Framework的级别吧

如果你回编译的APK不属于系统级文件,你可以按照以上内容新建一个apktool.yml文件。不过版本行一定要写你当前使用的apktool程序的版本!

如何在github上搭建个人博客

一、为什么在GitHub上托管个人博客

为什么在GitHub上托管博客,这个问题可以分两步来问:

首先,为什么 可以 在GitHub上托管博客?

GitHub是一个基于git的版本托管服务网站,上面聚集着几乎全世界的程序大牛,还有着大量的牛逼开源项目。而项目一旦成长壮大,一个简单的名称和一段描述很可能就无法满足作者与读者的需要。此时,GitHub Pages 就应运而生,它允许用户用更具描述性的自定义页面代替源码列表。同时,用户也可以利用其作为个人或组织主页,将 静态 网页托管其上。

那么,在有着WordPress等等大量的开源博客系统的情况下,为什么选择在GitHub上托管博客呢?

对程序猿来说无比亲切,光是看起来感觉就很牛逼的”Git驱动式博客开发与发布流程”。

超级容易,5分钟包学包会的发布方式。

静态页面,建立简单,几乎没有安全性隐患,当然这也是缺点之一,静态页面无法做到太过复杂的交互设计和网站结构。不过作为一个简单的个人博客,也不太会有这样的需求

免费而可靠

更加详细的内容可以参见这里 todo: Jekyll + GitHub Pages 的优点与缺点

话不多说,现在就来试试看。

二、10分钟快速搭建一个博客原型

首先确认:

拥有一个GitHub账号

已经安装 Git ,(在Windows下,个人推荐直接安装 GitExtensions ,有中文界面,并且集成了git + putty + kDiff ,比较省心一点啦)

1.建立一个项目

先在GitHub创建一个项目,名字随意,尽量全部小写字母,避免随后会碰到的URL冲突问题

本地运行Git,随意选个目录,将刚才创建的项目clone下来

cd /d/

git clone https://github.com/narcotics726/blogdemo.git

cd blogdemo

2.建立配置文件_config.yml

注意:之后建立的所有文档务必使用UTF-8 无 BOM 的编码保存

在项目的根目录下新建文件 _config.yml ,填写 baseurl: /blogdemo , blogdemo是你的项目名称,这一行内容规定了整个网站的根路径,稍后会详细解释这样做的意义。

3.建立主页

在根目录下新建文件 index.html , 内容像这样:

title: Hello, My Blog

{{ page.title }}

先不用急着奇怪为什么一个html文件会出现”{}”这样的标签,这里使用的是 Liquid 模板语言 ,{{ page.title }} 表示“本页面的标题”,更详细的介绍我们以后再讲,不妨这样理解:

#— begin of page’s head

title = “Hello, My Blog”

#— end of page’s head

print(page.title)

OK,那么博客主页设计完毕!(别吵…我答应过你要10分钟内搭建完成的…先弄个毛胚房意思意思,美化啊功能啊什么的晚点再说)

4.发布到GitHub

回到git bash, 检查一下 git status ,确认 _config.yml 与 index.html 无误后 add,commit,保持使用Git的良好习惯,记得添加提交描述

然后推送到GitHub,这里注意,因为我们使用的是GitHub Pages中的 Project Pages, GitHub仅会将分支 gh-pages 下的内容进行自动生成操作, 所以本地的 master 分支应推送到远端的 gh-pages 分支

git push origin master:gh-pages

稍微等待一下,最多10分钟(通常不用那么久啦),访问 yourname.github.com/blogdemo

,(其中 yourname

是你的GitHub帐户名,blogdemo则是你的项目名)就会看见你的博客主页(确实很丑…而且完全不像一个博客的样子,不过别急,慢慢来比较

快~)

另外,如果不幸发现你的中文页面出现了乱码的情况,别着急,还是该死的UTF-8问题,后面我们会一劳永逸的解决他的,暂时先手动调整一下浏览器的编码。

5.在_posts内撰写文章,并在首页加入文章列表

在这段时间里,我们继续为你的博客添砖加瓦,让他拥有最基本的文章阅读功能,另外不断F5页面的同时也可以关注一下自己在GitHub注册时所用的邮箱,如果之前推送的内容有误的话,GitHub将以邮件形式提醒你生成失败。

回到项目根目录, mkdir _posts 新建一个目录,看名字也知道啦,这里存放你所有的文章。

进入_posts目录,新建一篇文章。注意默认的文件名格式是 year-month-day-postTitle 这样。比如 2013-03-23-my_first_article.md,尽量避免空格或者其他乱七八糟的字符,这个文件名将作为URL的生成依据。文件名的格式可以通过修改 _config.yml 中的 permalink 属性而改变,默认值为 date ,也就是我们刚刚创建的文件的样子,具体的规则可以看这里,后面我们也会讲到。

如果你发现了我刚才创建的文件后缀名是 .md ,熟悉GitHub或者StackOverFlow的朋友应该知道Markdown 格式,推荐使用GitHub托管博客的原因之一也正是如此,我们可以在大部分时候避开恼人的HTML,转而使用更加直观的Markdown语法。如果不熟悉也没关系,可以参见这份Markdown 语法说明,应该说是相当易学,并且在熟悉之后非常易用的。

回到主题,打开刚才创建的文件,输入如下内容:

title: 我的第一篇文章

# {{ page.title }}

## 目录

+ [第一部分](#partI)

+ [第二部分](#partII)

+ [第三部分](#partIII)

———————————-

## 第一部分

这里是第一部分的内容

———————————-

## 第二部分

这里是第二部分的内容

———————————-

## 第三部分

这里是第三部分的内容

{{ page.date|date_to_string }}

这段内容中使用了最常用的几种Markdown语法,比如使用 # ,## 表示 HTML 中的

,

。使用[text](link)创建超链接,使用 连续多个 – 创建水平线(注意:不包括最上端包围title所使用的横线,那里表示一个页面的“头属性”),等等。更多详细的语法可以在之前提到的页面查询,这里不再赘述,总之,这是一种更加贴近真实写作的语法,推荐大家尝试。

啊对了,最后面的那个 {{ page.date|date_to_string }} 是指显示本页的日期属性,并且转换为可读的字符串形式。同样也是Liquid语法。

OK,那么第一篇文章也写好了,再把最新的repo推送到github,稍等片刻,就可以…等下,忘记给文章加上入口的链接了。

Sorry啦,重新打开我们的 index.html 文件,添加内容,变成下面这样:

title: My Blog

{{ page.title }}

{% for post in site.posts %}

{{ post.date|date_to_string }} {{ post.title }}

{% endfor %}

唔…都是Liquid的内容,简单解释一下,Liquid标记最主要分为两种,一种是直接输出变量内容,像这样:

{{ page.title }}

另一种则是逻辑命令形式的,像这样:

{% for x in y %} … {% endfor %}

而刚才写进主页的内容,就是遍历所有post文件,然后逐一显示在页面上,这里需要注意的一点就是在创建文章的超链接时,除了 post.url 之外,也要注意在前面加上site.url

,原因前面也有提到过,我们正在创建的是 Project Pages

类型的网站,其最终生成的网址根目录是:username.github.com/projectname,而 post.url

生成的超链接仅仅会自动加上 username.github.com/ 这样的前缀。

现在检查一下更改的所有内容,确认不要犯下愚蠢的错误,比如把 “.” 打成 “。”或者单词拼错之类的,提交并推送!

当当!如果一切顺利,就能看到你的首页外加文章列表闪亮登场。

6.增加模板套装_layouts

文章进行到这里,或许开头承诺的10分钟已经超过不少了…很抱歉我欺骗了你,不过至少我们进展很快~接下来——如果你仍有兴趣的话,让我们为网站增加一些统一性的风格设置。

回到项目根目录,新建文件夹 _layouts,顾名思义,“布局”是也。在 _layouts 中新建一个最基本的布局文件,姑且命名为default.html好了:

{{ page.title }}

{{ content }}

诺,首先解决了UTF-8的编码问题,随后指定了正文内容的位置,当然在这里只是一个最简单的内容,在body内仅有一个 {{ content }} 标签,你可以根据自己的喜好对页面进行任何改动,只要记得保留这个内容标签在你想要的位置就好。

然后我们修改index.html和刚写完的那篇文章,只要在头属性上加一句就好:

title: xxoo

layout: default.html

我们当然还可以把这个结构变得更灵活一些,比如继续新增两个模板分别叫做l_post.html与

l_index.html,他们首先引用default.html,但在其基础上做出一定的修改。然后首页使用l_index模板,而所有的post文件

则使用l_post模板,等等等等,请随意发挥。但始终记得加上 {{ content }} 标签

再次推送到服务端,查看效果。

至少这一点我没骗你,要发布最新的更改实在是太简单了,只需要一次push而已。

那么,基本的项目结构如下:

.

|– _config.yml

|– _includes

|– _layouts

| |– default.html

| `– post.html

|– _posts

| |– 2007-10-29-why-every-programmer-should-play-nethack.textile

| `– 2009-04-26-barcamp-boston-4-roundup.textile

|– _site

`– index.html

这幅图来自于:Yes We Jekyll,原谅我的懒惰,我实在不擅长排版…

用APKTOOL回编译报错,求解答

1、反编译=回编译后分别是

smali目录 回编译为 classes.dex 文件

res目录 回编译为 resources.arsc 文件

2、回编译顺序

在回编译时,会先检查“源”即resources

当你汉化文件,修改出错了(缺少一个符号也不行),

那么回编译会自动跳过编译res文件夹,直接回编译smali 。

所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,

这要会大大加快回编译速度。1、反编译=回编译后分别是

smali目录 回编译为 classes.dex 文件

res目录 回编译为 resources.arsc 文件

2、回编译顺序

在回编译时,会先检查“源”即resources

当你汉化文件,修改出错了(缺少一个符号也不行),

那么回编译会自动跳过编译res文件夹,直接回编译smali 。

所以,如果没有对smali(classes.dex)汉化,那么建议大家删掉这个文件夹,

这要会大大加快回编译速度。

3、出错问题1

在汉化时,往往会不小心删掉一些符号,如 “<" ">“符号等等。

File Manager

文件管理器/string>

这些小小的错误都会导致回编时译检查出错。

所以汉化时,注意对校,然后再回编译。

建议使用一些高级的文本编辑器,支持语法高亮视图的。

4、出错问题2

最近发现有些APK文件 反编译后,就算不汉化直接回编译,都会出错。

有可能的原因1,反编译后XML文件语法中@符号 前面多了”\” (\@ ),

用文本编辑工具 直接替换【\@】为【@】,应该可以解决。

建议使用最新版本的反编译工具。

5、建议大家使用新版本的APKTool工具,

当然如果新的有问题也可以试试旧的一、系统文件汉化再次强调

1、汉化Settings.apk(系统设置)、MMS.apk(信息)、Phone.apk(电话)、

等等系统文件,一定要先 安装构架,具体看另个文件

<关于APKTool工具反编译Settings.apk问题>。

2、系统文件汉化完后不需要签名,直接替换汉化后的文件,就可以了。

主要是,系统文件放在系统目录,无需再次读取签名获得权限,已经是高级了。

二、打包说明

1、通常汉化完回编译后,会自动生成所有APK内的文件,或者自动生成*.APK文件。

但是建议大家不要直接使用该文件,进了使用替换法,替换掉你汉化后的文件,

如:resources.arsc,如果修改过的图片,等等…

2、很多人对于APK文件 解压缩或压缩 都用“WinRAR”或“好压”,这里不推荐。

希望大家安装7-Zip这个压缩工具,对于zip格式的支持是最好的。而且很方便,

不需要重新关联apk 直接右键打开就行了。替换直接拖拉进去,就OK了一、回编译出错问题

(1.提示 strings.xml 最后一行错误,检查是否符号错误;

在汉化时,往往会不小心删掉一些符号,如 “<" ">“符号等等。

File Manager

文件管理器/string>

(2.提示 strings.xml 最顶部含中文代码首行错误,编码格式不对,转换成 UTF-8;

(3.提示 public.xml 出错,检查改动过的 arrays.xml 是否代码有错误的地方;

二、一切能正常但无法回编译

还有一种情况,apktool最新版本能正常反编译一个apk文件,在未做任何修改的情况下,无法回编译。

这是就要注意了,可以尝试一下用低版本的apktool进行【反编译】,然后在用高版本的apktoo工具【回编译】。

这里向大家推荐用 【APKDB】 这个工具,很方便,反编译时可以选择apktool的版本。