Bootstrap

emacs入门命令、android-studio和Android Gradle plugin(AGP)版本对照、zulu网页查找jdk11最新版下载脚本

emacs入门命令

ubuntu 22.04下emacs基本操作

sudo apt install -y emacs
图形化emacs | 文本化emacs --no-window-system,

快捷键Alt+x(==M x)执行命令:


shell #打开交互式shell终端          #emacs控制shell更精确
term  #打开交互式终端(默认/bin/bash) #emacs几乎不能控制term, 但term更像一个正常终端

delete-other-windows #关闭欢迎窗口

# 快捷键 : ctrl + p # 光标上移一行
# 快捷键 : ctrl + n # 光标下移一行
# 快捷键 : ctrl + 上下箭头 # shell终端下命令历史上下翻

kill-whole-line #复制整行

# 快捷键 : ctrl + y # 粘贴

copy-region-as-kill #???忘了

clipboard-kill-ring-save #复制到系统剪切板

kill-emacs #退出emacs进程

Emacs 核心概念

  • 缓冲区(Buffer)
  • 窗口(Window)
  • 框架(Frame)
  • 模式(Mode)
  • 键绑定(Key Binding)
  • 宏(Macro)
  • minibuffer
  • 寄存器(Register)
  • 变量(Variable)
  • 扩展和包(Extensions and Packages)
  • Lisp编程语言

Emacs 命令动词

  • delete : 删除字符。

  • kill : 剪切文本到kill ring(类似于剪贴板)。

  • yank : 从kill ring粘贴文本。

  • copy : 复制文本到kill ring,而不删除原文本。

  • search : 在缓冲区中搜索文本。

  • replace : 替换文本。

  • insert :在缓冲区中插入文本

  • save : 保存缓冲区内容到文件

  • open : 打开文件或缓冲区。

  • close :用关闭缓冲区或窗口

  • move:移动光标或文本

  • scroll :滚动缓冲区内容。

android-studio和Android Gradle plugin(AGP)版本对照

android-studio

Android Gradle plugin(AGP)

过往的 Android Gradle 插件版本

Android Gradle 插件 8.3.0(2024 年 2 月)

AS报错 修复举例(AGP : 8.1.0 --> 8.3.2):libxposed/service

报错

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/  /app5/android-studio-home/android-studio-2022.3.1.18-linux/bin/studio.sh   /app5/android-prj-home/libxposed/service/

android-studio报错:
Gradle sync failed in 740 ms. The project is using an incompatible version (AGP 8.3.2) of the Android Gradle plugin. Latest supported version is AGP 8.1.0

已修复

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/     /app5/android-studio-home/android-studio-2023.2.1.25-linux/bin/studio.sh   /app5/android-prj-home/libxposed/service/

分析过程

大概意思 android-studio-2022.3.1.18-linux此版本android-studio最高支持Android Gradle plugin(AGP) 8.1.0, 而当前项目中指定了更高版本的Android Gradle plugin(AGP) 8.3.2,因此要用更高版本的android-studio,

人工观看上述表, 发现, Android Studio Iguana | 2023.2.1(2024 年 2 月): ... Android Gradle 插件 8.3 中... 是支持Android Gradle plugin(AGP) 8.3.2的最低版本android-studio,

今日(2024-11-25)发现的Android Studio Iguana | 2023.2.1最新版本: 国内下载页面 / android-studio-2023.2.1.25-linux.tar.gz

AS报错 修复举例(AGP : 8.3.2 --> 8.5.1):libxposed/api/

报错

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/     /app5/android-studio-home/android-studio-2023.2.1.25-linux/bin/studio.sh   /app5/android-prj-home/libxposed/api/

android-studio-2023.2.1.25-linux报错: The project is using an incompatible version (AGP 8.5.1) of the Android Gradle plugin. Latest supported version is AGP 8.3.2

已修复

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/     /app5/android-studio-home/android-studio-2024.1.1.13-linux/bin/studio.sh   /app5/android-prj-home/libxposed/api/

分析过程

命中 Android Studio Koala | 2024.1.1 ( 2024 年 6 月) : ... and Android Gradle plugin 8.5

修复: 今日(2024-11-25)发现的Android Studio Iguana | 2023.2.1最新版本: 国内下载页面 / android-studio-2024.1.1.13-linux.tar.gz

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/     /app5/android-studio-home/android-studio-2024.1.1.13-linux/bin/studio.sh   /app5/android-prj-home/libxposed/api/

AS启动 : libxposed/example

JAVA_HOME=/app/zulu8.82.0.21-ca-jdk8.0.432-linux_x64/     /app5/android-studio-home/android-studio-2024.1.1.13-linux/bin/studio.sh   /app5/android-prj-home/libxposed/example/

zulu网页查找jdk11最新版下载脚本

shopt  -s expand_aliases
alias alias_grep_jdk11_linux_x64_tar_gz_sort_head_n='grep jdk11 | grep linux_x64.tar.gz | sort  --reverse  | head -n'
alias alias_grep_jdk17_linux_x64_tar_gz_sort_head_n='grep jdk17 | grep linux_x64.tar.gz | sort  --reverse  | head -n'
alias alias_grep_jdk21_linux_x64_tar_gz_sort_head_n='grep jdk21 | grep linux_x64.tar.gz | sort  --reverse  | head -n'

url="https://static.azul.com/zulu/bin?C=S"

date
#2024年 11月 25日 星期一 11:27:20 CST

w3m

sudo apt install -y w3m
w3m -T text/html $url   -dump | alias_grep_jdk11_linux_x64_tar_gz_sort_head_n 1
#[ ]         zulu11.76.21-ca-jdk11.0.25-linux_x64.tar.gz                2024-10-10 191M


w3m -T text/html $url   -dump | alias_grep_jdk17_linux_x64_tar_gz_sort_head_n 1
#[ ]         zulu17.54.21-ca-jdk17.0.13-linux_x64.tar.gz                2024-10-10 189M


w3m -T text/html $url   -dump | alias_grep_jdk21_linux_x64_tar_gz_sort_head_n 1
#[ ]         zulu21.38.21-ca-jdk21.0.5-linux_x64.tar.gz                 2024-10-15 203M

下载 https://static.azul.com/zulu/bin?C=S/zulu11.76.21-ca-jdk11.0.25-linux_x64.tar.gz

lynx


#lynx渲染结果不好
#lynx  $url   -dump | alias_grep_jdk11_linux_x64_tar_gz_sort_head_n 1

links2

sudo apt install -y links2
links2 -dump $url | alias_grep_jdk11_linux_x64_tar_gz_sort_head_n 1
#[   ]       zulu11.76.21-ca-jdk11.0.25-linux_x64.tar.gz                2024-10-10 191M

elinks

sudo apt install -y elinks
elinks $url --dump | awk '{print $2}' | alias_grep_jdk11_linux_x64_tar_gz_sort_head_n 1
#https://static.azul.com/zulu/bin/zulu11.76.21-ca-jdk11.0.25-linux_x64.tar.gz

;