نوشته‌های ترمینالی – Telegram
ابزار vimv یه ابزار برای rename کردن فایل از توی ترمینال با ویم هست.
اینطوریه که باید یه پکیج جدا نصب کنید و پیشفرض نصب نیست، بعدش توی یه پوشه می‌نویسید vimv و با vim یه فایل باز می‌کنه که هر خطش شامل اسم فایل/فولدرهای پوشه‌ٔ جاریه.
بعد هر کدوم رو می‌تونید ادیت کنید بعد که ویم رو ببندید (اگه نتونستید بگید) اون فایل/پوشه‌ها به اسم‌های جدیدشون رینیم میشن

https://twitter.com/i/status/1270720407272738818
استفاده از ctag داخل vim
برای؟ برای پیدا کردن definition یه key word در زبان‌های برنامه نویسی مرسوم
https://courses.cs.washington.edu/courses/cse451/10au/tutorials/tutorial_ctags.html
و
https://andrew.stwrt.ca/posts/vim-ctags/
خوندن محتوای یه فایل متنی و چاپش با فقط یک خط در جاوا

Files.lines(Paths.get("test.txt")).forEach(System.out::println);


این روش هم هست سریع‌تره:
System.out.print(
new String(Files.readAllBytes(Paths.get("test.txt")))
);


و تو پایتون که سرراست تره:
print(open("test.txt", 'r').read(), end="")
https://www.geeksforgeeks.org/iterators-in-java

انواع iterator در جاوا
در واقع ۳ نور iterator داریم.
اولیش رو که آشنا هستیم و universal iterator هست

دومی enumeration هست، این یه چیز legacy هست و از اولین jdk بوده و گویا خیلی استفاده نمی‌شه. با دستور elements() روی Vector و HashTable می‌تونید دریافتش کنید.

سومی list iterator که برای لیست هست فقط ولی امکانات بیشتری مثل برگشتن به عقب رو هم داره.
https://blog.codinghorror.com/the-great-newline-schism/
در مورد line terminal و داستان‌هایش


و جواب مختصر و مفیدتر
https://superuser.com/questions/374028/how-are-n-and-r-handled-differently-on-linux-and-windows

و ارائه راه حل:
https://support.nesi.org.nz/hc/en-gb/articles/218032857-Converting-from-Windows-style-to-UNIX-style-line-endings


پانوشت:
توی جاوا هم با دستور
System.lineSeparator();
می‌تونید ببینید سیستم فعلی از کدوم استاندارد تبعیت می‌کنه.


ویکیپدیای text file هم می‌تونه جالب باشه
https://en.wikipedia.org/wiki/Text_file
با اضافه کردن
set whichwrap+=<,>,[,]
به vimrc می‌تونید کاری کنید که arrow key های راست و چپ، بعد از تموم شدن خط به اول خط بعدی (یا اخر خط قبلی) برن، درست مثل ادیتور‌های معمول‌تر :)

منطقا خودتون اگه نیاز داشته باشید می‌تونید سرچش کنید ولی گذاشتم اینجا چون پیدا کردنش خیلی اذیت کرد و نمی‌دونستم چی سرچ کنم. :)
چرا از scanf استفاده نکنیم و راهکار چیه؟

چرا استفاده نکنیم؟ چون اصولا کاربرد عمومی برای ورودی گرفتن از کاربر نداره و برای formatted input هست ولی ورودی کاربر آخرین چیزی که هست، فرمت شده‌است :)
و اینکه در برابر بافر اورفلو هم ایمن نیست.
راه حل؟ تقریبا مثل input پایتون، یه رشته با fgets بگیرید و اون رو دستی پارس کنید.

http://c-faq.com/stdio/scanfprobs.html
ابزار خوندن و ادیت epub
رابط کاربری واضحی هم داره و من که اولین بار کار میکردم تونستم فایل رو باز کنم و ببینم و زوم کنم و برم صفحه‌ی‌ بعد.
https://calibre-ebook.com/