আমি কী একক কী দিয়ে পরবর্তী অপঠিত বার্তাটি মুটতে খুলতে পারি?


17

muttএকক কী দিয়ে পরবর্তী অপঠিত বার্তাটি খোলার কোনও উপায় আছে ? আমি পরবর্তী অপঠিত সাথে যেতে পারি next-new-then-unread, এটি Tabডিফল্টরূপে আবদ্ধ । তবে, যদি বর্তমান মেলবক্সে অপঠিত বার্তা না থাকে তবে তার next-unread-mailboxপরিবর্তে আমাকে ব্যবহার করতে হবে (ডিফল্টরূপে আনবাউন্ড)। এটি যাইহোক যাইহোক উপ-অনুকূল, কারণ যদি আমার কাছে একটি নতুন বার্তা থাকে, ছেড়ে দিন mutt, তবে muttআবার খুলুন , এটি আমাকে "নতুন" বার্তা সম্বলিত মেলবক্সে সরিয়ে দেবে না। (সম্ভবত ডাকবাক্স অপঠিত কোন নয়।)

তদ্ব্যতীত, এই উভয়ই পরবর্তী বার্তায় সূচক ভিউতে সরে যায় এবং আমি বার্তাটি পেজার ভিউতে (সহ Enter) ম্যানুয়ালি খুলতে পারি । পরবর্তী অপঠিত বার্তাটি খোলার কোনও উপায় আছে কি না , এটি কোন মেলবক্সে নেই?

আমি নিওম্যাট ব্যবহার করছি, সুতরাং আমি যে একটি আংশিক কাজ পেয়েছি তা হচ্ছে সাইডবার কমান্ডগুলি ব্যবহার করা।

macro index,pager , '<sidebar-next-new><sidebar-open><enter>'

সমস্যাটি হ'ল এটি স্বয়ংক্রিয়ভাবে পরবর্তী অপঠিত মেলবক্সটি (সাইডবার থেকে) খুলবে। সুতরাং যদি বর্তমান মেলবক্স এবং অপরটিতে অপঠিত বার্তা থাকে তবে এই কমান্ডটি বর্তমানের পরিবর্তে অন্য মেলবক্সে বার্তাটি খুলবে।

উত্তর:


4

প্রারম্ভিকদের জন্য, নতুন বার্তায় স্বয়ংক্রিয়ভাবে ঝাঁপ দিতে আপনি এই জাতীয় ম্যাক্রো ব্যবহার করতে পারেন:

macro index     .n      "<next-unread-mailbox><enter><next-new-then-unread><enter>" "Go to new mail"

তবে নোট করুন যে কোনও নতুন বার্তা না থাকলে কেবল Enter কী টিপানো হবে এবং বর্তমান বার্তাটি খোলা হবে।

বিকল্প হিসাবে যদি Maildirব্যবহার করা হয় তবে আমরা এমন একটি ~/bin/mutt-new.shস্ক্রিপ্ট ব্যবহার করতে পারি যা পরীক্ষা করতে পারে যে কোনও নতুন মেইল ​​রয়েছে:

#!/usr/bin/env sh

if [ "$(find "$HOME"/.muttmail/box1/new -type f -printf '\n' | wc -l)" -eq 0 ]
then
    printf "I think there's no new mail\n" >&2
    printf "Press [ENTER] to continue\n" >&2
    read -r _
    exit 1
fi

echo 'push <next-unread-mailbox><enter><next-new-then-unread><enter>'

এটি এতে যুক্ত করুন ~/.muttrc:

macro index     .n        "!~/bin/mutt-new.sh" "Go to new"

সম্পাদনা করুন:

এটি সম্পর্কে কী: বর্তমান মেলবক্সে নতুন মেল আছে কিনা তা নিম্নলিখিত স্ক্রিপ্টটি প্রথমে যাচাই করবে:

#!/usr/bin/env sh

cur_mbox=${1/=/}

echo "$1" >> /tmp/PAR
echo "$cur_mbox" >> /tmp/PAR

if [ ! "$(find "$HOME"/.muttmail/"$cur_mbox"/new -type f -printf '\n' | wc -l)" -eq 0 ]
then
    printf "There is new mail in this mailbox\n" >&2
    printf "Press [ENTER] to continue\n" >&2
    read -r _
    echo 'push <next-new-then-unread><enter>'
elif [ ! "$(find "$HOME"/.muttmail/ -type d -name new -exec ls {} \; | wc -l)" -eq 0 ]
then
    printf "There is new mail in other mailboxes\n" >&2
    printf "Press [ENTER] to continue\n" >&2
    read -r _
    echo 'push <next-unread-mailbox><enter><next-new-then-unread><enter>'
else
    printf "I think there's no new mail\n" >&2
    printf "Press [ENTER] to continue\n" >&2
    read -r _
    exit 1
fi

এটি এতে যুক্ত করুন ~/.muttrc:

folder-hook . 'set my_oldrecord=$record; set record=^; set my_folder=$record; set record=$my_oldrecord'
folder-hook . 'macro index .n "<enter-command>source \"~/bin/mutt-new.sh $my_folder |\"<return>" "Go to new"'

সম্পাদনা করুন:

তুমি বলেছিলে:

এটি যাইহোক যাইহোক উপ-অনুকূল, কারণ যদি আমার কাছে একটি নতুন বার্তা থাকে, মুট ছেড়ে দিন, তবে আবার মুট খুলুন, এটি আমাকে "নতুন" বার্তা সম্বলিত মেলবক্সে সরিয়ে দেবে না। (সম্ভবত মেলবক্সটি আর অপঠিত নয়))

এটি দ্বারা স্থির করা যেতে পারে:

set mark_old=no

উত্তরের জন্য ধন্যবাদ. এই পদ্ধতির একটি বড় সমস্যা হ'ল <next-unread-mailbox>বর্তমান মেলবক্সে অপঠিত বার্তা আছে কিনা তা নির্বিশেষে এটি চলে । এই ক্ষেত্রে এটি অন্য মেলবক্সে স্যুইচ করবে এবং বর্তমান মেলবক্সে পরবর্তী অপঠিত বার্তাটি খুলবে না। আরেকটি সমস্যা (আমার প্রশ্ন অনুসারে) হ'ল এটি <next-unread-mailbox>অপঠিত / নতুন বার্তাগুলি না দেখে অপঠিত মেলবক্সগুলি সন্ধান করে না ।
স্পারহাক

@ স্পারহাক: সম্পাদনা দেখুন। এটি একটি আকর্ষণীয় প্রশ্ন। দুর্ভাগ্যক্রমে muttসম্পূর্ণরূপে স্ক্রিপ্টযোগ্য নয় এবং এটি লজ্জাজনক।
আরকাদিউস দ্রবকিজিক

@ স্পারহাক: আরও একটি সম্পাদনা দেখুন। আমি যে ম্যাক্রোর পরামর্শ দিয়েছি তা অন্য ম্যালিবক্সে যাওয়ার আগে যদি কোনও থাকে তবে স্বয়ংক্রিয়ভাবে বর্তমান মেলবক্সে একটি নতুন ইমেল খুলবে। আমি Oযাওয়ার পরেও কীভাবে চিহ্নিত বার্তাগুলি নিষ্ক্রিয় করতে হবে তা পরামর্শ দিয়েছিলাম mutt
আরকাদিউস দ্রবকিজিক

ধন্যবাদ। আমি এই মুহুর্তে ছুটিতে আছি, তবে ফিরে আসার পরে এটি পরীক্ষা করব। এটি আশাব্যঞ্জক মনে হচ্ছে।
স্পারহক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.