Questions: further tweaks

This commit is contained in:
TEC 2022-10-16 23:00:33 +08:00
parent 42ec950968
commit c77c807f12
Signed by: tec
SSH Key Fingerprint: SHA256:eobz41Mnm0/iYWBvWThftS0ElEs1ftBr6jamutnXc/A
1 changed files with 20 additions and 13 deletions

View File

@ -21,8 +21,8 @@ the questions you see now will not necessarily be in the final survey.",
elseif v > 45 elseif v > 45
"Oh really? 🤨" "Oh really? 🤨"
end), end),
RadioSelect(:emacs_version, MultiSelect(:emacs_version,
"Which version of Emacs do you use?", "Which version(s) of Emacs do you use?",
["29 (master/HEAD)" => "29.0", ["29 (master/HEAD)" => "29.0",
"28.2", "28.1", "27.2", "27.1", "26.3", :other], "28.2", "28.1", "27.2", "27.1", "26.3", :other],
validators = v -> if isnothing(match(r"^\d+\.\d+$", v)) validators = v -> if isnothing(match(r"^\d+\.\d+$", v))
@ -90,7 +90,8 @@ the questions you see now will not necessarily be in the final survey.",
validators=[wordlimit(400), charlimit(6*400)], validators=[wordlimit(400), charlimit(6*400)],
mandatory=false), mandatory=false),
TextArea(:emacs_difficulties, TextArea(:emacs_difficulties,
"Can you recall any difficulties you faced when initially learning Emacs?<br/>Please be as specific and concrete as your memories permit.", "Can you recall any difficulties you faced when initially learning Emacs?" *
"<p style=\"font-size: 0.8em;\">Please be as specific and concrete as your memories permit.</p>",
validators=[wordlimit(400), charlimit(6*400)], validators=[wordlimit(400), charlimit(6*400)],
mandatory=false), mandatory=false),
RadioSelect(:emacs_introduction, RadioSelect(:emacs_introduction,
@ -121,7 +122,7 @@ the questions you see now will not necessarily be in the final survey.",
MultiSelect(:package_discovery, MultiSelect(:package_discovery,
"How do you learn about new packages?", "How do you learn about new packages?",
["Reddit", "GitHub", "Mailing lists", ["Reddit", "GitHub", "Mailing lists",
"IRC servers", "Matrix servers", "Discord servers", "IRC servers", "Matrix servers", "Discord", "Discourse", "Blogs",
"Web search engines", "GNU ELPA/MELPA online package lists", "Web search engines", "GNU ELPA/MELPA online package lists",
"M-x list-packages", :other]), "M-x list-packages", :other]),
MultiSelect(:package_research, MultiSelect(:package_research,
@ -211,10 +212,10 @@ the questions you see now will not necessarily be in the final survey.",
RadioSelect(:email_package, RadioSelect(:email_package,
"Do you use an Email client in Emacs?", "Do you use an Email client in Emacs?",
["No", "Gnus", "Mu4e", "notmuch", "Wanderlust", "Rmail", :other]), ["No", "Gnus", "Mu4e", "notmuch", "Wanderlust", "Rmail", :other]),
RadioSelect(:spell_package, MultiSelect(:spell_package,
"Do you use a spell checker in Emacs?", "Do you use a spell checker in Emacs?",
["No", "My framework/starter kit's default" => "framework default", ["No", "My framework/starter kit's default" => "framework default",
"flyspell", "spell-fu", "ispell", :other]), "flyspell", "spell-fu", "ispell", "langtool", :other]),
RadioSelect(:undo_package, RadioSelect(:undo_package,
"Do you use an undo package in Emacs?", "Do you use an undo package in Emacs?",
["No", "My framework/starter kit's default" => "framework default", ["No", "My framework/starter kit's default" => "framework default",
@ -234,7 +235,9 @@ the questions you see now will not necessarily be in the final survey.",
"Have you contributed to Emacs or a GNU ELPA package?", "Have you contributed to Emacs or a GNU ELPA package?",
["Frequently", "Often", "Sometimes", "Rarely", "Never"]), ["Frequently", "Often", "Sometimes", "Rarely", "Never"]),
TextArea(:emacs_contribution_feedback, TextArea(:emacs_contribution_feedback,
"Have you got any feedback on the Emacs/GNU ELPA contribution process?", "Have you got any feedback on the Emacs/GNU ELPA contribution process?" *
"<p style=\"font-size: 0.8em;\">This regards the overall process: obtaining FSF assignment, " *
"path submission and review by email, etc.</p>",
validators=[wordlimit(400), charlimit(6*400)], validators=[wordlimit(400), charlimit(6*400)],
mandatory=false), mandatory=false),
RadioSelect(:package_contribution, RadioSelect(:package_contribution,
@ -243,18 +246,22 @@ the questions you see now will not necessarily be in the final survey.",
RadioSelect(:isa_package_maintainer, RadioSelect(:isa_package_maintainer,
"Do you maintain any Emacs packages?", "Do you maintain any Emacs packages?",
["Yes", "No"]), ["Yes", "No"]),
RadioSelect(:has_donated, RadioSelect(:has_donated_fsf,
"Have you ever contributed financially to Emacs development (via the FSF)", "Do you contribute financially to Emacs development (via the FSF)",
["No", ["No", "I have in the past" "Yes",
"Yes",
"I would if I could donate to Emacs directly" => "Would directly", "I would if I could donate to Emacs directly" => "Would directly",
"I would like to, but cannot" => "Cannot"])), "I would like to, but cannot" => "Cannot", :other]),
RadioSelect(:has_donated_community,
"Do you contribute financially to members of the Emacs community?",
["No", "I have in the past", "Yes",
"I would like to, but cannot" => "Cannot",
:other])),
SurveyPart("Demographics (all questions are optional)", SurveyPart("Demographics (all questions are optional)",
NumberInput(:respondent_age, NumberInput(:respondent_age,
"How old are you?", "How old are you?",
validators = n -> if n < 8 validators = n -> if n < 8
"My, you're advanced for you're age. <i>Suspiciously</i> advanced…" "My, you're advanced for you're age. <i>Suspiciously</i> advanced…"
elseif n > 100 elseif n > 99
"Congratulations on becoming a centenarian! How about you get one of your grandchildren to do this survey instead?" "Congratulations on becoming a centenarian! How about you get one of your grandchildren to do this survey instead?"
end, end,
mandatory=false), mandatory=false),