Відкрийте браузер на http://codegolf.stackexchange.com


33

Ваше завдання - відкрити вікно браузера браузера за замовчуванням на http://codegolf.stackexchange.com .

Ваш код повинен відкривати веб-переглядач і не може покладатися на відкритий.

Це , тому найкоротша відповідь у байтах виграє.


8
Чи дозволені скорочувачі URL-адрес?
isaacg

4
Чи дозволяється запуск JavaScript у браузері за замовчуванням, щоб відкрити вікно?
Mwr247

4
@ Mwr247 Ні, це не так.
noɥʇʎԀʎzɐɹƆ

15
Додайте роз'яснення / обмеження до самого питання, оскільки коментарі не гарантовано залишатимуться назавжди.
Mego

8
Ваша специфіка мінімальна, що призвело до великої невпевненості в тому, що дозволяється виконати завдання. Крім того, деякі, ймовірно, вважають це тривіальним завданням. І все-таки ти позитивний;)
Mwr247

Відповіді:


35

 GNU Emacs, 29 27 14 байт

(eww"ppcg.ga")

EWW - це браузер всередині Emacs. Ця browse-webфункція є псевдонімом ewwі тому робить браузерeww за замовчуванням у Emacs:

Ваше завдання - відкрити вікно браузера браузера за замовчуванням на http://codegolf.stackexchange.com .

Завдяки @CoolestVeto, @Jonathan Leech-Pepin та @ zyabin101.


Можна використовувати www.ppcg.lolзамість http://ppcg.lol?
AdmBorkBork

1
@TimmyD Ні, спочатку я намагався з "www", але протокол повинен бути наданий (поведінка відрізняється, наприклад, з "mailto: //"). Для взаємодії з користувачем існує "переглядати-URL-в точці", який передує "http", але це, звичайно, довше.
coredump

Вам це не потрібно //, я не думаю. (Я не використовую emacs, але це прийнято без цього //)
Addison Crump

11
ಠ_ಠ PPCG - це не те, що "ewwww", це перегляд коду: P
Пуховик

3
Мабуть є ppcg.ga . Це може зберегти вам байт.
user48538

46

Орація , 41 байт

Не вигравав, але впевнений був веселим. На даний момент я за пітоном лише 1 байт!

I need webbrowser
Now open "http:ppcg.ga"

Пояснення:

I needкомпілює import $1з webbrowserтим, що є модулем.

Nowвиконує наступну команду з модуля, як module.commandі для аргументів чогось наступного.

Отже, це компілюється до:

#!/usr/bin/env python3
import webbrowser
webbrowser.open("http:ppcg.ga")

Я все-таки потребую http:деталі, але її неможливо скоротити.


17
Як власник ppcg.lol , я схвалюю це повідомлення.
Quill


Я майже впевнений , що ви можете замінити "http://ppcg.lol"з "http:ppcg.lol". Я невизначений , чи можна видалити простір між openта "http:...", але спробувати?
Аддісон Кримп

2
@Quill Я мав на увазі, як ми знаємо, що ти не будеш Рік перекочувати нас у будь-який майбутній момент?
PyRulez

1
@Как це залежить від того, наскільки ти любиш Ріка ...
TMH

43

Пакет, 17 байт

Збережено 3 байти завдяки Mego.

start www.ppcg.ga

Це відкриється у вашому браузері за замовчуванням, якщо ви запустите його з командного рядка Windows.

Я думаю, що це буде працювати і в Powershell, але я не впевнений.


3
Ви можете використовувати startзамість explorer.
Mego

8
Ви можете використовувати start www.ppcg.lolзамість того, щоб Windows неявно розбирала його як HTTP. Працює як у CMD, так і в PowerShell.
AdmBorkBork

2
Навіщо вам це потрібно www.?
Блендер

3
@Blender Тому що в іншому випадку вона намагається знайти локальну програму під назвою pccg з розширенням файлу .lol та запустити її.
Морган Трапп

2
@PyRulez Це технічно не URL-скорочувач. Quill купував цей домен деякий час назад і встановлював переадресацію DNS.
Mego

24

PowerShell, 17 16 байт

saps www.ppcg.lol 

Використовуючи ще коротший домен, наданий Міло.

saps www.ppcg.ga

Хоча startце відомий псевдонім, Start-Processіснує ще один saps. Ви можете бачити це з Get-Alias. Він дотримується конвенції для подібних Start-і Stop-cmdlets.


psst ви можете використовувати www.ppcg.ga зараз
Майло,

@Milo Спасибі Я думаю, що інші люди можуть вас почути.
Метт

ppcg.ga не працює
anukul

2
Хм. Все ще працює для мене, і я вважаю, що міло. Можливо, воно нове, і dns не пропонується повністю
Метт

21

Термінал (OSX), 20 18 17 байт

open http:ppcg.ga

Збережено 2 завдяки CoolestVeto


5
open- це утиліта OSX, а не баш; це було б більш доцільно називати "командний рядок OSX".
Скайлер

1
@Skyler Це неправильно тоді? ss64.com/bash/open.html
Mwr247

1
перший рядок: "Відкрийте файл у програмі за замовчуванням, використовуючи віртуальний термінал (VT)." Якщо ви спробуєте запустити це на unix, він скаже вам "Не вдалося отримати дескриптор файлу, що стосується консолі", оскільки він намагається відкритись у терміналі, а не в браузері.
Скайлер

3
Можна позбутися //.
Аддісон Кримп

2
Ви можете зберегти ще один байт:open http:ppcg.ga
DarkDust

14

MATLAB, 28 25 байт

web www.ppcg.lol -browser
  • wwwкоротша http://та забезпечує обробку адреси як URL-адресу
  • Це коротше за допомогою неявного виклику функції (який вводить вхідні дані як рядки), а не явної версії web('www.ppcg.lol', '-browser').
  • Якщо ви перебуваєте в ОС X X, це можна спростити, web ppcg.lol -browserоскільки MATLAB автоматично додасть http://( 21 байт )

Альтернативи :

  • У Windows це може бути скорочено до ( 19 байт )

    !start www.ppcg.lol
    
  • В ОС X ( 21 байт )

    !open http://ppcg.lol
    
  • У розгорнутому додатку MATLAB ( 16 байт ) працює наступне

    web www.ppcg.lol
    
  • Якщо вбудований браузер міг би бути використаний, це може бути зменшено ще більше, як httpмається на увазі ( 12 байт )

    web ppcg.lol
    

OS X є зайвим, оскільки вбудована openкоманда робить те саме.
noɥʇʎԀʎzɐɹƆ

1
@CrazyPython Це саме те, що !робиться в MATLAB, це еквівалент system(command). У мене це було більше як демонстрація інших альтернатив, які можна виконати з MATLAB. Це нормально?
Suever

Вам потрібна www.?
Аддісон Кримп

@CoolestVeto Іноді робиш, що ніколи. Коли ви користуєтесь зовнішнім браузером, який ви робите, однак внутрішнього браузера ви не маєте. Якщо його не вказати, не відкриється вікно браузера. Якщо ви зможете змусити його працювати, я більш ніж радий змінити його!
Suever

@CoolestVeto Тому я копав ще трохи, і схоже, що wwwце непотрібно лише на OS X
Suever

13

AutoHotKey , 16 байт

Run www.ppcg.lol

7
На жаль, не у всіх встановлено * тремтіння * Google Chrome * тремтіння *, встановлене як браузер за замовчуванням (або встановлений взагалі!).
wizzwizz4

5
Не у всіх є також AHK ... обидва факти дуже здригаються
Michelfrancis Bustillos

5
Я здригнувся, бо мені довелося набрати ... неважливо.
wizzwizz4

2
Специфікація виклику вимагає відкрити PPCG у браузері за замовчуванням , який може бути, а може бути, не Chrome.
Денніс

1
Кома вам не потрібна
інженер Тост

13

Пітона, 52 48 47 45 44 байт

Безсоромно запозичуючи це скорочене посилання.

from webbrowser import*;open("http:ppcg.ga")

Завдяки CrazyPython за -4 байти та Sp3000 для ще одного.

Редагувати: поголився ще 2 завдяки CoolestVeto

Редагувати: завдяки MD XF за реєстрацію ppcg.ga та збереження іншого байта


Колишня зміна залишає його точно такої ж довжини. Що стосується http: //, якщо ви не залишите це, він намагається відкрити локальний файл під назвою "ppcg.lol", якого не існує.
Skyler

1
Вам не потрібно //.
Аддісон Кримп

Спасибі! Цікаво, чому це працює?
Скайлер

1
Ви також можете це зробити за допомогою лише параметрів командного рядка, python -m webbrowser -t http:ppcg.lolякі, на мою думку, вважаються 30
знаками

1
ppcg.lolбув незареєстрований, визначивши цю відповідь недійсною: I Однак я щойно зареєструвався ppcg.ga, тож ви можете використовувати це, замість цього зберегти байт.
MD XF

10

Баш, 24 22 байти

xdg-open http:ppcg.lol

Не такий короткий, як деякі інші. firefox ppcg.lolкоротше, але він не відповідає специфікації питань.


xdg-open www.ppcg.lolпрацює і для мене.
Цифрова травма

@digital_trauma цікаво, це не було для мене. Він шукав www.ppcg.lol у файловій системі. Ubuntu 15.10.
Огадай

Дивно. Ubuntu 14.04 для мене. xdg-utils 1.0.
Цифрова травма

1
Вам це не потрібно //.
Аддісон Кримп

1
@CoolestVeto Правильно. xdg-open http:ppcg.lolтакож працює для мене.
Цифрова травма

10

Java 7, 118 115 байт

class P{public static void main(String[]a)throws Exception{java.awt.Desktop.getDesktop().browse(new java.net.URI("http://ppcg.lol"));}}

Java - не найкраща мова для гри в гольф ... Ось та сама програма в більш читаному форматі:

class P {
    public static void main (String[] a) throws Exception {
        java.awt.Desktop.getDesktop().browse(new java.net.URI("http:ppcg.ga"));
    }
}

Збережено 2 байта, видаливши //в URI / L, а інший байт за рахунок переходу на .gaз .lol(побічно завдяки @Milo)



1
@Mego Я міг би це зробити, але тоді це буде Java 8. Це відповідь на Java 7. Але дякую за пораду!
HyperNeutrino

1
Replace "http://ppcg.lol" with "http:ppcg.lol"
Addison Crump

8
code-golf specifies that functions are sufficient, you do not have to write a full program. So void f(){ .... } would be enough.
flawr

1
Your program in more readable format is missing a closing parenthesis
Nzall

9

Pylongolf, 11 bytes (Non-Competing)

"ppcg.lol"p

Pushes ppcg.lol into the stack then p opens it.


Will that open it as a local file, or as a website address?
wizzwizz4

And did you just add the changes that allowed this to work?
Rɪᴋᴇʀ

@wizzwizz4 As an address. Yes, so this does not compete with others, just for fun.

5
If I were you, I would edit "(Non-competing)" into the title, so people don't downvote.
wizzwizz4

@wizzwizz4 done.
Rɪᴋᴇʀ

9

Java 8, 115 112 bytes

interface P{static void main(String[]a)throws Exception{java.awt.Desktop.getDesktop().browse(new java.net.URI("http:ppcg.ga"));}}

Java is not the best language for golfing... Here's the same program in a more readable format:

interface P {
    static void main (String[] a) throws Exception {
        java.awt.Desktop.getDesktop().browse(new java.net.URI("http:ppcg.ga"));
    }
}

Saved 2 bytes by removing // (thanks @CoolestVeto), and another byte by switching to .ga from .lol (indirect thanks to @Milo)


You can remove the //.
Addison Crump

Isn't it supposed to be java.net?
Ryan

cant you replace interface with class?
MCMastery

@MCMastery Yes. However, with an interface, you can save 3 bytes because even though interface is longer than class, you save more bytes because the public modifier is implied.
HyperNeutrino

@Ryan Whoops. Fail. Yes, you're right. Thanks!
HyperNeutrino

8

JavaScript, 34 bytes

require('open')('http://ppcg.lol')

Uses Node.js


Do you need //?
Addison Crump

2
If node.js supports ES6: require`open``http://ppcg.lol`; (added ; to avoid tripping the formatting)
Ismael Miguel

2
Alternatively, does it require a protocol? eg require('open')('//ppcg.lol') to save 5 bytes
Martijn

2
@Martijn Shh...
wizzwizz4

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

7

Racket, 41 40 bytes

(require net/sendurl)(send-url"ppcg.ga")

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

Thanks for commenting. I'll update my answer in front of a computer later today. :)
Winny

6

Applescript, 28 bytes

  • 3 bytes saved thanks to @CoolestVeto.
open location"http:ppcg.lol"

how dare a high-rep user not format their header correctly D:
cat

1
@cat actually, I've never been called out on this before - I've always operated on the assumption that bytes is the default for codegolf (and is even explicitly specified in this question), so explicitly respecifying in answers is just redundant information. Do you know of a meta post about this?
Digital Trauma

Well, first and foremost, my comment was messing around -- I only changed it for consistency with all the other answers, and it's really insignificant but it bothered me. I'm pretty sure there's no meta post on formatting specifically, and that this format came from the Leaderboard Stack Snippets, but I'm almost certain there's a meta post for Defaults for Scoring Code Golf that says it's bytes unless otherwise specified.
cat

1
@cat Yep, I don't think its a big deal either way - I'm certainly not planning on rolling back your edit :). Scoring by bytes by default is in the code-golf tag wiki
Digital Trauma

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF


5

R, 26 bytes

shell.exec("www.ppcg.lol")

I don't know of any shorter way to do this in R.


1
Duplicate of this. Simply wrapping another answer in a system/fork/whatever call is a trivial modification.
Mego

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

5

Actionscript 3, 117 bytes

package{import flash.display.Sprite;public class A extends Sprite{function A(){navigateToUrl("ppcg.lol","_blank")}}}

Like Java, this is not a great golfing language. Here's the code with formatting:

package
{
    import flash.display.Sprite;

    public class A extends Sprite
    {
        function A()
        {
            navigateToUrl("ppcg.lol", "_blank")
        }
    }
}

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

5

Rebol 2, 16 15 bytes

browse"ppcg.ga" 

if you accept an error before opening the page on Linux, no error on Windows

20 bytes without an error

browse http:ppcg.lol

Alternative to the first one (although with the same score): browse #ppcg.lol
Izkata

now with shorter url.(
sqlab

5

Perl 5, 66 57 bytes

Should work everywhere, but needs that import :(

8 bytes saved with @msh210 comment.

use Browser::Open open_browser;open_browser"http:ppcg.ga"

Also, for funsies :

Perl 5 (Windows), 34 bytes

system "start http://www.ppcg.ga"

Perl 5 (Unix), 31 bytes

system "xdg-open http:ppcg.ga"

use -M instead of use to shave a coupla bytes. (Untested.) Also, I'm guessing you don't need the parens or the www.. (Also untested.)
msh210

@msh210 Can't seem to get the -M switch to work apparently on my Mac... (?), but indeed the www as well as the // can be removed. Thanks !
Paul Picard

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

Edit done. Thank you for keeping old answers up to date :)
Paul Picard


3

RFO-BASIC, 22 bytes

BROWSE "http:ppcg.lol"

Read about RFO-BASIC at laughton.com.


While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review
Mego

Alright. I just figured most people wouldn't know about this "dialect" of BASIC.
TickTock

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway. Also, couldn't the space between BROWSE and " be removed, saving another byte?
MD XF

3

VBScript, 57 bytes

I used to have lots of fun creating tiny programs in VBScript, back in 2010.

I've remembered this language and used the code on: https://stackoverflow.com/a/13401872/2729937

It still works on Windows 7, at least.

set S=CreateObject("WScript.Shell")
S.run("www.ppcg.ga")

This is a bit different from the usual start www.ppcg.lol, in the sense that it executes the www.ppcg.ga directly, with an implicit start.

An alternative way would be "cmd.exe /C start www.ppcg.ga".


ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

@MDXF Thank you for that tip. While it is nice to save a byte, I won't change the score since it doesn't feel fair.
Ismael Miguel

2

C#, 33 bytes

Process.Start("http://ppcg.lol");

Opens the default browser to the web address


Nope... Replace \\ via //.
Qwertiy

not a c# program, just a single line
BryanJ

Also this needs the System.Diagnostics namespace to be added in or Process to be fully qualified to work.
TheLethalCoder

1
This is not a c# program.
Vahid Amiri

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

2

05AB1E, 16 bytes (non-competing)

Non-competing, since the features used here postdate the challenge. Code:

’…Ò ™³.ÐÏg.´¢’.E

You can try the string online here. This basically evaluates to this batch answer.

Uses the CP1252 encoding.


How do you count the bytes? Depending which program I use for counting I get from 21 to 34 bytes.
sqlab

@sqlab 05AB1E uses the CP1252 encoding.
Adnan

2

VB.NET, 32 30 bytes

Process.Start("http:ppcg.lol")

+10 for Sub Main(), and +7 for End Sub, which you need in order to run this at least in a VB.NET console program, also you would need to import System.Diagnostics.
Virtual Anomaly

ppcg.lol has been unregistered, invalidating this answer :I However, I just registered ppcg.ga, so you can use that instead, saving a byte anyway.
MD XF

2

Factor, 38 36 26 bytes

[ "http:ppcg.ga" open-url ]

I didn't know one could golf-off the // in the protocol.


I think you can remove the space between the end-quote and run-process, and you can wholly drop //.
Addison Crump

@CoolestVeto Thanks! I didn't know the // could be left off. As for the space between " and run-process, dropping that would require a word named "run-process to be present in the current vocabulary search path
cat

@CoolestVeto Factor's like Forth -- highly whitespace dependent
cat

Duplicate of this. Simply wrapping another answer in a system/fork/whatever call is a trivial modification.
Mego

@Mego Okay, well, not that it really matters but I did come up with this without seeing that one. But, there is really no other way to run The default browser without xdg-open in languages which are not equipped with special functions for browsing the web. A C or ASM answer would surely also have to do system("xdg-open...")
cat

2

Python, 44 bytes

from webbrowser import*;open('http:ppcg.ga')

URL from this comment
Edit: ppcg.ga seems to become more popular now (but it WAS available when I posted this answer).

Ungolfed:

from webbrowser import * # Loads everything in the webbrowser module
open("http://ppcg.ga/") # Opens default browser to http://ppcg.ga/

Python, 44 bytes

from webbrowser import*;open('http:gfa1.tk')

URL from this answer

Ungolfed:

from webbrowser import * # Loads everything in the webbrowser module
open("http://gfa1.tk/") # Opens default browser to http://gfa1.tk/

Python, 45 bytes

from webbrowser import*;open('http:ppcg.lol')

Ungolfed:

from webbrowser import * # Loads everything in the webbrowser module
open('http://ppcg.lol/') # Opens default browser to http://ppcg.lol/

Take that, ppcg.lol! (1 byte shorter)

Note: I added a separate answer leading to ppcg.lol, 'cause I've noticed the other sites doesn't work for me in Internet explorer 11, and I saw other users having this problem too.

Both are non-non-competing (read that right?)


2

Ruby, 22 20 19 bytes (on OS X)

`open http:ppcg.ga`

Simple.

Thanks to Daniel for 2 bytes off.


You can save 2 characters by using backticks instead of %x. open http:ppcg.lol
Daniel Evans

@DanielEvans Great, thanks. That saves 2 bytes.
Rɪᴋᴇʀ

1
"'open' is not recognized as an internal or external command, operable program or batch file."
Dewi Morgan

1
@DewiMorgan OS X only.
Rɪᴋᴇʀ

2

Cheddar, 65 bytes

cheddar.internal(cheddar.uid).require("open").c("http://ppcg.ga")

Accesses cheddar internals and then calls upon open package and calls it with string to PPCG. Make sure you have open npm package installed


Shouldn't this be Cheddar+Open if it requires another package?
Pavel
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.